基于Innobackupex的全备恢复(三)

2015-01-21 12:17:32 · 作者: · 浏览: 12
04-05/ib_logfile0' to '/data/inst3606/data3606/ib_logfile0'
innobackupex: Finished copying back files.


141222 09:34:47? innobackupex: completed OK!


--权限修改
SHELL> cp /data/inst3606/data3606bk/my3606.cnf /data/inst3606/data3606/my3606.cnf
SHELL> chown -R mysql:mysql /data/inst3606/data3606


--启动恢复后的实例
SHELL>? mysqld_safe --defaults-file=/data/inst3606/data3606bk/my3606.cnf &


--验证恢复情况
SHELL>? sql -P3606
robin@localhost[(none)]> select * from fullbakdb.tb;
+------+---------+
| id? | val? ? |
+------+---------+
|? ? 1 | robin? |
|? ? 2 | leshami |
+------+---------+


robin@localhost[(none)]> drop database fullbakdb;
Query OK, 1 row affected (0.01 sec)


3、小结
a、Xtrabackup恢复的目的要是保证事务(数据)的一致性,Xtrabackup log会记录这些事务备份期间的状态
b、恢复过程分为2个阶段,一个是Prepare阶段,一个是copy back阶段,恢复前关闭原有实例
c、Prepare阶段会根据从innodb logfile捕获出来的信息(记录在xtrabackup log)来进行相应的前滚或回滚
d、Prepare阶段会在成功前滚或回滚后创建新的innodb logfile(空)
e、copy back阶段则是将成功恢复的全部文件复制回原来或指定的数据目录(目录应为空目录)
f、copy back前需要关闭原有实例,如果恢复到不同的实例则不需要
g、copy back完成后应做相应的权限修改
h、启动恢复后的实例并进行相关验证