,,先简单介绍一下这个工具:innobackupex
innobackupex比xtarbackup有更强的功能,它整合了xtrabackup和其他的一些功能,他不但可以全量备份/恢复,还可以基于时间的增量备份与恢复。
innobackupex备份原理
innobackupex首先调用xtrabackup来备份innodb数据文件,当xtrabackup完成后,innobackupex就查看文件xtrabackup_suspended,然后执行“读锁平表”来备份其他的文件
innobackupex恢复原理
innobackupex首先读,取my . cnf中所做查看变量(datadir、innodb_data_home_dir innodb_data_file_path, innodb_log_group_home_dir)对应的目录是存在,确定相关目录存在后,然后先复制myisam表和索引,然后在复制innodb的表,索引和日志。
介绍一下环境:
MySQL: 5.6.19
安装路径:/u01/mysql
数据文件:/u01/mysql/数据
,,备份源:
/u02/备份
我是异机恢复,和本机操作一样。
步骤:
。/innobackupex——用户=root密码=根——主机=172.17.210.112平行=4——节流=400流=焦油/mysqlbak/innobackupex 2祝辞/mysqlbak innobackupex/bak。日志1祝辞/mysqlbak/innobackupex/fullbak。焦油
,常用的参数。
——用户=root ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,备份操作用户名,一般都是根用户,
——密码=root123 ,,,,,,,,,,,,,,,,,,,,,,,,,,密码
——主机=172.17.210.112 ,,,,,,,,,,,,,,,,,,,,,,,主机ip,本地可以不加
——平行=4——节流=400,,,,,,,,,,,,,,,,,,,并才能行个数,根据主机配置选择合适的,默认是1个,多个可以加快备份速度。
——流=tar ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,压才能缩类型,这里选择焦油格式,可以加,可不加。加上文件就小一点,在备份的时候就已经打包好了。
/mysqlbak/innobackupex ,,,,,,,,,,,,,,,,,,,,,,备份存放的目录
2在/mysqlbak/innobackupex/bak.log ,,,,,,,备份日志,将备份过程中的输出信息重定向到贝克。日志
1在/mysqlbak/innobackupex/fullbak.tar ,,,,备份文件压缩后的名字
给出不压缩的全备:
。/innobackupex——用户=root密码=根——主机=172.17.210.112并行=4,油门=400/mysqlbak/innobackupex 2祝辞/mysqlbak innobackupex/bak。日志1祝辞/mysqlbak/innobackupex/
查看日志信息,会出现
141011 09:44:02 innobackupex:执行冲洗引擎日志……
141011 09:44:02 innobackupex:等待日志复制完成
xtrabackup:最新的检查要点(增量):“14275993522”
xtrabackup:停止日志复制线程。
.>比;日志扫描(14275993522)
xtrabackup:创建暂停与pid的文件“/tmp/xtrabackup_log_copied”“19659”
141011 09:44:03 解锁所有表innobackupex:
141011 09:44:03 innobackupex:等待ibbackup (pid=19659)完成
xtrabackup:事务日志的lsn(14275990028)(14275993522)被复制。
innobackupex:备份目录中创建/mysqlbak/innobackupex的
141011 09:44:04 innobackupex:连接数据库服务器关闭
innobackupex:您必须使用- i (——ignore-zeros)选择提取焦油流。
141011 09:44:04
表示备份成功。
<强> 强>
恢复备份文件要保证datadir文件为空,否则会报如下的错误
(root@newbidb数据)# innobackupex——用户=root ,//数据/备份
(root@newbidb本)#。/innobackupex——用户=根——密码=root1 defaults-file——运用原木/=/etc/my . cnf中所做u02/备份/
(root@newbidb本)#。/innobackupex——用户=根——密码=root1 defaults-file——复制回来=/etc/my . cnf中所做/u02/备份/
注释一下,常用的参数。
——defaults-file=/etc/my.cnf ,,文恢复会使用my . cnf中所做件把需要恢复的文件,恢复指到my . cnf中所做定的位置。
——apply-log ,,,,,,,,,,,,,,,,,,,,,,,这是备份时产生的日志,
——copy-back ,,,,,,,,,,,,,,,,,,,,,,,这是备份源,解压后的备份文件。
恢复需要一点点的时间,出现下面信息表示恢复成功。
innobackupex:开始复制InnoDB系统表空间
innobackupex:“u02/备份”
innobackupex:回到原始InnoDB数据目录“/u01/mysql/数据”
innobackupex:“u02/备份/ibdata1”复制到“/u01/mysql/数据/ibdata1 '
innobackupex:开始复制InnoDB撤消表空间