XtraBackup备份与恢复实践

1)增加表zengliang;

mysql> show tables; +--------------+ | Tables_in_tt | +--------------+ | course | | t1 | +--------------+ 2 rows in set (0.00 sec) mysql> create table zengliang(a int ,b int); Query OK, 0 rows affected (0.06 sec) 

2)增量备份

#注意--incremental-dir后面跟基础备份目录,之后再跟增量备份目录,

#与应用增量备份日志相反

linuxidc@ubuntu:~$ innobackupex --user=root --password=000000 --defaults-file=/tmp/mysqldata/my.cnf --incremental --incremental-dir dbbackup/2016-08-20_06-16-26/ dbbackup/ innobackupex-1.5.1: MySQL binlog position: filename 'mysql-bin.000001', position 1749 160820 06:24:13 innobackupex-1.5.1: Connection to database server closed 160820 06:24:13 innobackupex-1.5.1: completed OK!

 

#备份成功

linuxidc@ubuntu:~$ ls dbbackup/ 2016-08-20_06-16-26 2016-08-20_06-24-08

3)应用日志恢复数据

--apply-log    回滚日志

--redo-only    回滚合并(多个增量的时候,增量也需要用到,直到最后一个增量不用)

     a)恢复完全备份数据

linuxidc@ubuntu:~/dbbackup$ innobackupex --apply-log --redo-only 2016-08-20_06-16-26

     b)应用增量备份日志

     #注意此时--incremental-dir后面跟的是增量备份的目录,之后再跟基础备份的目录;

     #与增量备份相反

     #注意:由于权限问题,使用innobackupex,应该使用root账户,不然这条不会通过;

   

linuxidc@ubuntu:~/dbbackup$ innobackupex --apply-log --incremental-dir=(增量备份目录) (基础备份目录)

#不知何原因总是不太容易成功;

 

4)复制恢复文件到数据目录

#注意:数据目录要求是空,最好先备份,再清空;

linuxidc@ubuntu:~/dbbackup$ innobackupex --defaults-file=/tmp/mysqldata/my.cnf --user=root --password=000000 --copy-back 2016-08-20_06-16-26/ innobackupex-1.5.1: Copying '/home/linuxidc/dbbackup/2016-08-20_06-16-26/ib_logfile1' to '/tmp/mysqldata/node1/ib_logfile1' innobackupex-1.5.1: Finished copying back files. 160820 07:11:09 innobackupex-1.5.1: completed OK!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/49536f37ef63cb60fc9112c13ff66b87.html