1.下载并安装 percona-xtrabackup-24-2.4.6-2.el6.x86_64.rpm
2.如果安装失败 逐个安装以下rpm
yum -y install
perl
perl-devel
libaio
libaio-devel
perl-Time-HiRes
perl-DBD-MySQL
3.如果安装perl-DBD-MySQL与mysql有冲突:
下载并安装 MySQL-shared-compat-5.6.35-1.el6.x86_64.rpm 选择对应系统及版本
4.再次安装percona-xtrabackup-24-2.4.6-2.el6.x86_64.rpm成功, 如果仍然不成功, 下载并安装libev-4.15-1.el6.rf.x86_64
增量备份的原理就是,把增量目录下的数据,整合到全量目录下,然后在进行,全数据量的还原。
全量备份
1.在master上备份所需数据库
innobackupex --default-file=/etc/my.cnf --user=root --password=root --databases="sweetwater" /mysql-backup/
2.将生成的文件复制到slave所在主机上
3.停止slave的mysql服务
4.清除必要的mysql文件
rm -rf /var/lib/mysql/ibdata*
rm -rf /var/lib/mysql/ib_logfile*
rm -rf /var/lib/mysql/sweetwater
rm -rf /var/lib/mysql/ib_buffer_pool
rm -rf /var/lib/mysql/xtrabackup_info
5.执行
innobackupex --user=root --copy-back --force-non-empty-directories /mysql-backup/master_backup/2017-03-07_20-59-49/
6.设置mysql文件的权限
chown -R mysql:mysql /var/lib/mysql
7.启动mysql服务
增量备份
1.master增量备份
innobackupex --default-file=/etc/my.cnf --user=root --password=root --databases="sweetwater" --incremental /mysql-backup --incremental-basedir=/mysql-backup/2017-03-07_21-10-22
(最新的同步成功的目录)
2.将生成的文件复制到slave所在主机上
innobackupex --default-file=/etc/my.cnf --user=root --apply-log --redo-only /mysql-backup/master_backup/2017-03-07_20-59-49/
innobackupex --default-file=/etc/my.cnf --user=root --apply-log --redo-only /mysql-backup/master_backup/2017-03-07_20-59-49/ --incremental-dir=/mysql-backup/master_backup/2017-03-07_21-26-38/
3.停止slave的mysql服务
4.清除必要的mysql文件
rm -rf /var/lib/mysql/ibdata*
rm -rf /var/lib/mysql/ib_logfile*
rm -rf /var/lib/mysql/sweetwater
rm -rf /var/lib/mysql/ib_buffer_pool
rm -rf /var/lib/mysql/xtrabackup_info
rm -rf /var/lib/mysql/xtrabackup_binlog_pos_innodb
5.执行
innobackupex --user=root --copy-back --force-non-empty-directories /mysql-backup/master_backup/2017-03-07_20-59-49/
6.设置mysql文件的权限
chown -R mysql:mysql /var/lib/mysql
7.启动mysql服务