CentOS-6.5下MariaDB-10基于XtraBackup备份工具的原理及配置详解(三)

2014-11-24 03:16:27 · 作者: · 浏览: 18
oma]> CREATE TABLE hehe1 (Name CHAR(30));

MariaDB [xiaoma]> \q

2.2 其次,在做第二次增量备份:

[root@localhost ~]# innobackupex --incremental /mybackups/ --incremental-basedir=/mybackups/2014-03-07_09-56-26/

省略...出现此行可以了。

140307 10:05:25 innobackupex: completed OK!

[root@localhost ~]#

2.3 查看xtrabackup_checkpoints文件信息:

[root@localhost mybackups]# cat /mybackups/2014-03-07_10-05-20/xtrabackup_checkpoints

backup_type = incremental

from_lsn = 1721035

to_lsn = 1728639

last_lsn = 1728639

compact = 0

[root@localhost mybackups]#

2.4 假如说这时候我们又做了修改,而没有做增量备份,那么就从要最后一次增量备份中(如下信息的日志及位置)做相关数据恢复:

[root@localhost mybackups]# cat /mybackups/2014-03-07_10-05-20/xtrabackup_binlog_info

master-bin.000002 874

[root@localhost mybackups]#

2.5 那么就又再一次的插入数据(注意此时没有做任何备份):

[root@localhost 2014-03-07_13-24-26]# mysql

MariaDB [(none)]> use hellodb

MariaDB [hellodb]> INSERT INTO tb1 VALUES (3),(4);

3、模拟数据损坏或操作失误:

[root@localhost ~]# service mysqld stop

Shutting down MySQL.. [ OK ]

[root@localhost ~]# rm -rf /data/mydata/*

4、模拟将数据恢复:

4.1 先执行恢复完全备份:

[root@localhost ~]# innobackupex --apply-log --redo-only /mybackups/2014-03-07_09-51-29/

... ...

140307 10:17:01 innobackupex: completed OK!

[root@localhost ~]#

4.2 接着执行恢复第一次增量备份:

[root@localhost ~]# innobackupex --apply-log --redo-only /mybackups/2014-03-07_09-51-29/ --incremental-dir=/mybackups/2014-03-07_09-56-26/

... ...

140307 10:21:37 innobackupex: completed OK!

[root@localhost ~]#

4.3 最后执行第二次增量备份:

[root@localhost ~]# innobackupex --apply-log --redo-only /mybackups/2014-03-07_09-51-29/ --incremental-dir=/mybackups/2014-03-07_10-05-20/

... ...

40307 10:22:31 innobackupex: completed OK!

[root@localhost ~]#

4.4 查看几次恢复合并后的文件(可以和之前做对比):

[root@localhost ~]# cd /mybackups/2014-03-07_09-51-29/

[root@localhost 2014-03-07_09-51-29]# ls

backup-my.cnf ibdata1 performance_schema xiaoma2 xtrabackup_binlog_info xtrabackup_logfile

hellodb mysql test xtrabackup_binary xtrabackup_checkpoints

[root@localhost 2014-03-07_09-51-29]#

4.5 查看xtrabackup_checkpoints文件信息:

[root@localhost ~]# cat /mybackups/2014-03-07_09-51-29/xtrabackup_checkpoints

backup_type = full-prepared

from_lsn = 0

to_lsn = 1728639

last_lsn = 1728639

compact = 0

[root@localhost ~]#

4.6 查看完全备份与第二次备份的时间点:

[root@localhost 2014-03-07_09-51-29]# cat /mybackups/2014-03-07_09-51-29/xtrabackup_binlog_info

master-bin.000002 874

[root@localhost 2014-03-07_09-51-29]# cat /mybackups/2014-03-07_10-05-20/xtrabackup_binlog_info

master-bin.000002 874

[root@localhost 2014-03-07_09-51-29]#

4.7 恢复数据(完全备份):

[root@localhost 2014-03-07_09-51-29]# innobackupex --copy-back /mybackups/2014-03-07_09-51-29/

... ...

140307 10:33:42 innobackupex: completed OK!

[root@localhost 2014-03-07_09-51-29]#

4.8 修改器属主属组:

[root@localhost ~]# cd /data/mydata/

[root@localhost mydata]# chown -R mysql:mysql ./*

4.9 查看且导出数据:

[root@localhost mydata]# mysqlbinlog --start-position=874 /data/binlogs/master-bin.000002

... ...

INSERT INTO tb1 VALUES (3),(4)

... ...

[root@localhost mydata]# mysqlbinlog --start-position=874 /data/binlogs/master-bin.000002 > /tmp/inc.sql

4.10 启动服务:

[root@localhost mydata]# service mysqld start

Starting MySQL. [ OK ]

[root@localhost mydata]#

4.11 关闭二进制日志:

Mar