1.安装xtrabackup的yum源
rpm -ivh https://www.percona.com/redir/downloads/percona-release/redhat/latest/percona-release-0.1-4.noarch.rpm
2.yum安装percona-xtrabackup软件
yum install percona-xtrabackup -y
3.备份、恢复数据
完全备份
innobackupex --user=USER --password=PASS /path/to/BACKUP-DIR
innobackupex --user=USER --password=PASS --database="db1 db2" --stream=tar /path/to/BACKUP-DIR | gzip > /path/to/BACKUP-DIR/file.tar.gz
#指定备份的库并压缩
预备全备
innobackupex --user=USER --password=PASS --apply-log /path/to/BACKUP-DIR/DATE-DIR
#-apply-log 回滚未提交的事务,准备在一个备份上启动mysql服务
恢复备份
/etc/init.d/mysqld stop #停掉mysql
mv /var/lib/mysql /var/lib/mysql_bak #数据目录备份
mkdir -p /var/lib/mysql #重建数据目录,目录要为空
innobackupex --user=USER --password=PASS --copy-back /path/to/BACKUP-DIR
mv /var/lib/mysql /var/lib/mysql_bak #数据目录备份
mkdir -p /var/lib/mysql #重建数据目录,目录要为空
innobackupex --user=USER --password=PASS --copy-back /path/to/BACKUP-DIR
chown -R mysql.mysql /var/lib/mysql #改变文件所属
/etc/init.d/mysqld start #启动mysql
4.增量备份
(增量备份的前提是有一个全量备份,在全量备份的基础上进行增量备份)
第一次增量备份
innobackupex --defaults-file=/backup/config/3306.cnf --socket=/var/lib/mysql/mysql_3306.sock --incremental /backup/incremental/ --incremental-basedir=/backup/full/
第二次增量备份
innobackupex --defaults-file=/backup/config/3306.cnf --socket=/var/lib/mysql/mysql_3306.sock
--incremental /backup/incremental/ --incremental-basedir=/backup/incremental/2015-05-12_17-31-45/
参数说明:
--no-lock:不锁表,可能使备份数据不一致
--incremental:指定存储本次增量备份的目录
--incremental-basedir:上次备份的存储目录