为InnoDB和XtraDB 数据库执行非阻塞备份
Tagged Tags:

图片 1

XtraBackup物理备份

Percona
XtraBackup是社会风气上独占鳌头的开源,无需付费的MySQL热备份软件,为InnoDB和XtraDB 数据库试行非堵塞备份。使用Percona
XtraBackup,能够兑现以下优势:

  • 高速可信地成功的备份

  • 备份时期的不间断事务管理

  • 节约磁盘空间和网络带宽

  • 自行备份验证

  • 制造热InnoDB备份,而不间歇数据库

  • 对MySQL实行增量备份

  • 将减削的MySQL备份压缩到另一个服务器

  • 在MySQL服务器之间移动表

  • 轻易创造新的MySQL主从

  • 备份MySQL,而不向服务器加多负载

Percona XtraBackup为全部版本的Percona
Server,MySQL和MariaDB实行MySQL热备份,压缩和增量MySQL备份。Percona
XtraBackup与MySQL,玛丽亚DB和Percona
Server协作使用。它补助完全非拥塞备份InnoDB,XtraDB和HailDB 存款和储蓄引擎。

Percona XtraBackup专业原理

Percona
XtraBackup是依据InnoDB的崩溃恢复生机功效。复制InnoDB数据文件,诱致当中不等同的数目; 但随后它对文本实践崩溃恢复生机,使它们重新成为平等,可用的数据库。

那是因为InnoDB维护三个重做日志,也称之为事务日志。那带有对InnoDB数据的每一个校勘的记录。当InnoDB 运维时,它会检查数据文件和业务日志,并实行多少个步骤。它将付出的业务日志条目款项应用于数据文件,并对改正数据但未提交的其余业务试行打消操作。

Percona
XtraBackup通过记录日志种类号(LSN卡塔尔最早职业,然后复制掉数据文件。那需求一小会时刻来形成,所以意气风发旦文件正在改正,那么它们反映了数据库在差别不时常候间点的气象。同一时候,Percona
XtraBackup运转贰个后台进度,监视事务日志文件,并从中复制改革。Percona
XtraBackup供给不停地那样做,因为业务日志是以巡回形式编写的,而且可以在大器晚成段时间后重复使用。Percona
XtraBackup从数据文件最早施行以来历次改动都亟待职业日志记录。

Percona XtraBackup将应用备份锁 ,作为一个轻量级代替。此功效在Percona
Server 5.6+中可用。Percona
XtraBackup使用那么些自动复制非InnoDB数据,以制止窒碍修改InnoDB表的DML查询。当服务器帮助备份锁时,xtrabackup将首先复制InnoDB数据,运行并复制MyISAM表和.frm文件。黄金时代旦变成,文件的备份将启幕。它将备份.frm,.MPAJEROG,.MYD,.MYI,.T本田UR-VG,FLUSH TABLES WITH READ LOCKLOCK TABLES FO奥迪Q5 BACKUP.par

注意

锁定只对MyISAM和其他非InnoDB表,只有 在 Percona XtraBackup完结全部InnoDB
/ XtraDB数据和日志后备份。Percona
XtraBackup将使用备份锁 ,作为叁个轻量级替代。此意义在Percona
Server 5.6+中可用。Percona
XtraBackup使用这几个自动复制非InnoDB数据,以幸免拥塞改善InnoDB表的DML查询。FLUSH TABLES WITH READ LOCK

自此,xtrabackup将动用阻止全部操作,只怕变动二进制日志地方或 或
报告。然后xtrabackup将不负职务复制REDO日志文件和获取二进制日志坐标。在这里产生之后xtrabackup将解锁二进制日志和表。LOCK BINLOG FO卡宴 BACKUPExec_Master_Log_PosExec_Gtid_SetSHOW MASTER/SLAVE STATUS

聊到底,二进制日志地方将被打字与印刷到STDE福特ExplorerCRUISER和xtrabackup 将脱离再次来到0借使一切正常。

亟待留意的是STDELacrosse奥迪Q5的xtrabackup不是写在别的公文中。您必需将其重定向到二个文书,比方,。xtrabackup OPTIONS2> backupout.log

它还就要备份的目录中开创以下文件。

在计划阶段,Percona
XtraBackup使用复制的专业日志文件对复制的数据文件实践崩溃复苏。完结此操作后,数据库就足以过来和使用。

备份的MyISAM和InnoDB表最后将相互意气风发致,因为在筹算(恢复生机卡塔 尔(英语:State of Qatar)进度之后,InnoDB的数据会前滚到备份实现的点,而不会回滚到该点从前。这些日子点合作所接受的任务,由此MyISAM数据和策画的 InnoDB数据是一齐的。FLUSH TABLES WITHREAD LOCK

轻易易行,这几个工具允许你通过复制数据文件,复制日志文件以至将日志应用到数码的各个组合来施行流式和增量备份等操作。

平复备份

要使用xtrabackup苏醒备份,您能够利用 或选项。xtrabackup –copy-backxtrabackup –move-back

xtrabackup将从my.cnf变量datadir, innodb_data_home_dir,innodb_data_file_为InnoDB和XtraDB 数据库执行非阻塞备份。path,innodb_log_group_home_dir中读取, 并检查目录是或不是存在。

那将复制MyISAM表,索引等(.FRM,.M奇骏G, .MYD,.MYI,.T奥德赛G,.T福特ExplorerN,.ARM, .APAJEROZ,.CSM,.CSV,par和.opt的文书卡塔尔首先,InnoDB的下一步是表和目录,最后是日记文件。它就要复制文件时保留文件的属性,mysql在运行数据库服务器早前可能供给将文件的全体权转移为,因为它们将由创制备份的顾客全数。

抑或,该选拔可用于回复备份。此选项 与唯黄金时代的区分是,它不是复制文件,而是将其移动到对象地点。由于此选项删除备份文件,由此必需审慎使用。在未曾丰富的可用磁盘空间来保存那多少个数据文件及其备份副本的景观下,此功效格外实用。xtrabackup –move-backxtrabackup –copy-back

为InnoDB和XtraDB 数据库执行非阻塞备份。安装XtraBackup

安装XtraBackup 源

[root@ZHENGDA ~]# uname -r
3.10.0-327.el7.x86_64

yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm

为InnoDB和XtraDB 数据库执行非阻塞备份。安装

yum -y install percona-xtrabackup-24

创建连接顾客并受权

mysql> CREATE USER 'zhengda'@'localhost' IDENTIFIED BY 'goyun.org';
mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO 'zhengda'@'localhost';
mysql> FLUSH PRIVILEGES;

完整备份

(1卡塔尔xtrabackup只好备份innodb和xtradb两种引擎的表,而不能备份myisam引擎的表;
(2卡塔尔innobackupex是二个装进了xtrabackup的Perl脚本,协理同不平日间备份innodb和myisam,但在对myisam备份时索要加二个大局的读锁。还应该有正是myisam不援救增量备份。

$ xtrabackup --user=zhengda --password=goyun.org --backup \ 
  --target-dir=/data/backup  
$ innobackupex --user=zhengda --password=goyun.org /path/ to /backup/dir/ 
$ innobackupex --user=zhengda --password=goyun.org --stream=tar ./ | bzip2 -

备份到/data/backup下

备份所有库:$ innobackupex --defaults-file=/etc/my.cnf--user=zhengda \
           --password=goyun.org --socket=/tmp/mysql.sock /data/backup
           
备份两个库:$ innobackupex --databases="db1 db2"--defaults-file=/etc/my.cnf--user=zhengda \
            --password=goyun.org --socket=/tmp/mysql.sock /data/backup

增量备份

注:第二次增量备份要确立在全部备份之上能力够
–incremental /data/backup1 钦命增量备份贮存的指标目录
–incremental-basedir=/data/backup 钦点完整备份的目录

$ innobackupex  --defaults-file=etc/my.cnf --user=zhengda --password=goyun.org \
--socket=/tmp/mysql.sock --incremental /data/backuup1 --incremental-basedir=/data/backup/#会根据当天时间生成个目录

展开第三遍增量备份,须求钦赐上叁次增量备份的目录
–incremental /data/backup2 钦命此番增量备份目录
–incremental-basedir=/data/backup1 内定上次增量备份目录

$ innobackupex --defaults-file=/etc/my.cnf --user=zhengda --password=goyun.org \
--socket=/tmp/mysql.sock --incremental /data/backup2 --incremental-basedir=/data/backup1/(....)

还原备份

–apply-log 计划苏醒备份的抉择
–use-memory=8G 设置计划恢复生机数据时采纳的内部存储器,能够拉长筹算所开支的年月

$ innobackupex --apply-log --use-memory=8G /data/backup
#还原如下
$ innobackupex  --defaults-file=/etc/my.cnf --user= --password= --copy-back /data/backup
#或
$ xtrabackup --user=zhengda --password=goyun.org --copy-back --target-dir=/data/backup

应用Mysqldump举办逻辑备份

mysqldump作为入眼的MySQL备份工具,效用特别苍劲。备份参数、恢复生机计谋,必要紧凑探究。

备份数据库:

备份单个数据库或单个数据库中的钦赐表:

mysqldump [OPTIONS] database [tb1] [tb2]…

备份多少个数据库:

mysqldump [OPTIONS] –databases [OPTIONS] DB1 [DB2 DB3…]

备份全体数据库:

mysqldump [OPTIONS] –all-databases [OPTIONS]

增加此选项备份时不锁表

--single-transaction

案例:本地备份全数库

mysqldump -u root -p密码 --all-databases > ./all.sql

案例:本地苏醒全体库

mysql -u root -p密码  < ./all.sql

案例:备份本地db1,db2两个库

mysqldump -u root -p密码 --databases db1 db2 > ./db1_2.sql

案例:复苏当地db1,db2多少个库

mysql -u root -p密码 db1 db2 < ./db1_2.sql

案例:在B主机上实行将A主机的yun库备份到B主机上 ,在B主机上要求创立yun库

-C表示主机间的数额传输使用数据压缩

mysqldump --host=192.168.6.108(A) -u root -p密码 --opt yun | mysql --host=localhost(B) -u root -p密码 -C yun

案例:在 B主机 上实践将 A主机 上的具备数据库备份到本地

mysqldump --host=192.168.6.108(A) -u root -p密码 --all-databases > all.sql(B)

案例:复苏在B主机上实行

此小说来自水龟运转wuguiyunwei.com

我们的集体号

图片 2

发表评论

电子邮件地址不会被公开。 必填项已用*标注