[mysql@mysql1 ~]$ innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log /data/mysqldata/backup/2014-07-10_09-29-32/ --incremental-dir=/data/mysqldata/backup_inc/2014-07-10_09-31-36 /
继续执行innobackupex命令,应用增量备份,这次要操作的备份集就是最后一份,不需要再指定--redo-only参数
[mysql@mysql1 ~]$ innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log /data/mysqldata/backup/2014-07-10_09-29-32/ --incremental-dir=/data/mysqldata/backup_inc/2014-07-10_09-35-13/
注意在备份集进行恢复的准备过程中,不要随意中断该任务,否则有可能导致备份集处于不一致状态。由于XtraBackup是直接在备份集中进行准备,一旦有异常,搞不好想恢复都没办法。建议操作之前,将备份集备份一次。
建议再执行一遍innobackupex --apply-log
[mysql@mysql1 ~]$ innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log /data/mysqldata/backup/2014-07-10_09-29-32/
执行文件的恢复
[mysql@mysql1 ~]$ innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --copy-back /data/mysqldata/backup/2014-07-10_09-29-32/
恢复操作可以在任意机器上执行,只要您拥有完整备份集,可以把XtraBackup当做数据库迁移工具
打包和压缩备份集
XtraBackup支持流(stream)模式,能够直接将备份输出到指定的格式进行处理,比如tar或xbstream
[mysql@mysql1 ~]$ innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --user=xtrabk --password=onlybackup --stream=tar /tmp | gzip -> /data/mysqldata/backup/xtra_fullbackup.tar.gz
全备
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --user=xtrabk --password='onlybackup' /data/mysqldata/backup/
修改数据
(system@localhost) [mysql]> create table mytable(a int);
Query OK, 0 rows affected (0.06 sec)
(system@localhost) [mysql]> insert into mytable values (1);
Query OK, 1 row affected (0.04 sec)
(system@localhost) [mysql]> insert into mytable values (2);
Query OK, 1 row affected (0.01 sec)
(system@localhost) [mysql]> insert into mytable values (3);
Query OK, 1 row affected (0.00 sec)
(system@localhost) [mysql]> insert into mytable values (4);
Query OK, 1 row affected (0.00 sec)
(system@localhost) [mysql]> insert into mytable values (5);
Query OK, 1 row affected (0.01 sec)
进行第一增量备份
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --user=xtrabk --password='onlybackup' --incremental --incremental-basedir=/data/mysqldata/backup/2015-02-14_19-08-11 /data/mysqldata/backup_inc
修改数据
(system@localhost) [mysql]> insert into mytable values (6);
Query OK, 1 row affected (0.01 sec)
(system@localhost) [mysql]> insert into mytable values (7);
Query OK, 1 row affected (0.01 sec)
(system@localhost) [mysql]> insert into mytable values (8);
Query OK, 1 row affected (0.00 sec)
(system@localhost) [mysql]> insert into mytable values (9);
Query OK, 1 row affected (0.00 sec)
(system@localhost) [mysql]> insert into mytable values (10);
Query OK, 1 row affected (0.00 sec)
(system@localhost) [mysql]> select * from mytable;
+------+
| a |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
+------+
10 rows in set (0.00 sec)
进行第二次增量备份
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --user=xtrabk --password='onlybackup' --incremental --incremental-basedir=/data/mysqldata/backup_inc/2015-02-14_19-10-14 /data/mysqldata/backup_inc
进行恢复
对全量恢复做处理
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log --redo-only /data/mysqldata/backup/2015-02-14_19-08-11/
进行第一次增量备份恢复
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log --redo-only /data/mysqldata/backup/2015-02-14_19-08-11/ --incremental-dir=/data/mysqldata/backup_inc/2015-02-14_19-10-14/
进行第二次增量备份恢复
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log --redo-only /data/mysqldata/backup/2015-02-14_19-08-11/ --incremental-dir=/data/mysqldata/backup_inc/2015-02-14_19-12-21/
建议再执行一遍innobackupex --apply-log
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --apply-log /data/mysqldata/backup/2015-02-14_19-08-11/
执行copy操作
innobackupex --defaults-file=/data/mysqldata/3306/my.cnf --copy-back /data/mysqldata/backup/2015-02-14_19-08-11/
进行数据验证