一、实验环境
1、准备两台虚拟机,系统centos7
2、 两台虚拟机装好mariadb-server
3、两台主机配置好epel源,下载新版本的xtrabackup rpm包
二、实验步骤:
-
在原主机上实现
1、完全备份
mkdir /backups/{full,inc1,inc2} -pv
xtrabackup --backup --target-dir=/backups/full/
2、第一次修改数据
mysql hellodb -e ”insert hellodb.students (name,age) values(‘a‘,18)“
3、第一次增量备份
xtrabackup --backup --target-dir=/backups/inc1/ --incremental-basedir=/backups/full
4、第二次修改数据
mysql -e "insert hellodb.students (name,age) values(‘b‘,28);"
5、第二次增量备份
xtrabackup --backup --target-dir=/backups/inc2/ --incremental-basedir=/backups/inc1/
scp -r /backups/ 目标主机:/
** ## 在目标主机上实现
1、清空数据,停服务
systemctl stop mariadb
rm -rf /data/mysql/*
2、预处理数据库
xtrabackup --prepare --apply-log-only --target-dir=/backups/full
xtrabackup --prepare --apply-log-only --target-dir=/backups/full --incremental-dir=/backups/inc1/
xtrabackup --prepare --target-dir=/backups/full --incremental-dir=/backups/inc2
3、复制数据
xtrabackup --copy-back --target-dir=/backups/full
4、权限和启动服务
chown -R mysql.mysql /data/mysql/
systemctl start mariadb
三、实验总结:
xtrabackup版本升级到2.4后,相比之前的2.1有了比较大的变化:
innobackupex 功能全部集成到 xtrabackup 里面,只有一个 binary程序,另
外为了兼容考虑,innobackupex作为 xtrabackup 的软链接,即xtrabackup现
在支持非Innodb表备份,并且Innobackupex在下一版本中移除,建议通过
xtrabackup替换innobackupex xtrabackup备份工具适用于较大型的数据库文件备份,比mysqldump适用场景更多一些。
原文地址:http://blog.51cto.com/11912662/2154211