扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
一:什么是xtrabackup
创新互联建站是一家集网站建设,陵水黎族企业网站建设,陵水黎族品牌网站建设,网站定制,陵水黎族网站建设报价,网络营销,网络优化,陵水黎族网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。XtraBackup 是一个用来备份 MySQL 的工具。对mysql的MYISAM引擎只支持完全备份,对innodb不仅支持完全备份,也支持增量备份,是一个全自动的工具。
二:安装xtrabackup
在percona公司官网上下载xtrabackup备份工具,
percona-xtrabackup-2.0.0-417 //支持mysql-5.5
rpm包进行安装
安装时有依赖性,
解决三个依赖性
1,libaio.1
2.perl-DBD-Mysql
3.linev.so.4 //需要从网上下载 yum源没有
三:xtrabackup 的使用
innobackupex是xtrabackup的一个perl脚本。
实战一:
完全备份数据库
innobackupex --user=root --password=*** /backup/ //备份的路径
一般情况下,在备份完成后,要做回滚,防止有的事务没有提交,解决不同步问题。
innobackupex --apply-log /backup/2015....
连接数据库刷新日志文件
flush logs;
备份二进制文件
cp /mysql-bin-00003 /backup/
mysqlbinlog mysql-bin-00004 > abc.sql
模拟数据库损坏
rm -fr /mydata/data //mysql的数据文件
此时关闭 和 开启服务异常
killall mysqld
还原数据库
还原时不要求数据库服务正常状态,但备份是要求,
innobackup --copy-back /backup/2015....
chown mysql.mysql /mydata/data -R
/etc/init.d/mysqld start
数据库正常
利用二进制文件,恢复数据(完全备份后对数据库还进行操作)
set sql_log_bin=0 //不记录二进制日志
source /backup/abc.sql
set sql_log_bin=1 //恢复正常
实战二:
xtarbackup 做增量备份
innobackup --incremental /backup --incremental-basedir=/backup/2016... 完全备份的文件
innobackupex --incremental /backup/ --incremental-basedir=/backup/2016-05-15_15-30-23/
第一次增量指向完全备份的文件
第二次增量备份的时后要指定第一次增量备份的文件
在损坏可以 完全+增量+二进制
恢复:
准备 只指定redo操作
有增量备份的时候只指定redo操作 因为完全没有提交操作而增量提交了事务
innobackupex --apply-log --redo-only /backup/2016-05-15_15-30-23/
innobackupex --apply-log --redo-only /backup/2016-05-15_15-30-23/ --incremental-dir=/backup/2016-05-15_15-35-25/
所有的提交动作到备份到完全备份文件上
还原时只用还原完全备份的文件 --copy-back
还原时 指定第一次完全的文件。在其后追加,和备份时不同
420 innobackupex --apply-log -redo-only /backup/2016-05-15_16-05-22/ --incremental-dir=/backup/2016-05-15_16-13-46/
421 ls
422 rm -fr *
423 innobackupex --copy-back /backup/2016-05-15_16-05-22/
424 ls
425 chown mysql.mysql
426 chown mysql.mysql . -R
427 mysqlls
428 ls
429 rm -fr *
430 innobackupex --copy-back /backup/2016-05-15_16-05-22/
431 ls
432 chown mysql.mysql . -R
433 killall mysqld
434 /etc/init.d/mysqld start
435 mysql
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流