mysql5.7 使用XtraBackup2.4 全量备份还原
下载 XtraBackup
MySQL5.7我们使用 XtraBackUp2.4版本 下面是网址
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/9fc2b529379b3d917b4878a3677bdc3a.jpg)
下载文件为 percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm
进行安装
预先安装 libev perl-DBD-MySQL perl-Digest-MD5
yum -y install libev
yum -y install perl-DBD-MySQL
yum -y install perl-Digest-MD5
或者一次安装
yum -y install libev perl-DBD-MySQL perl-Digest-MD5
如果不安装依赖直接安装rpm会报错
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/012fa49f6c56fbd926b67563df669d5b.jpg)
rpm -ivh percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/89baf8d6a7ea4c6fc54f7a8c4f49799c.jpg)
验证
rpm -qa | grep perc
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/d7b4c72d455367ddf6026cb448be9f6c.jpg)
创建备份用户
grant reload,lock tables,replication client,create tablespace,super, PROCESS ,INSERT,SELECT on *.* to 'backup'@'%' identified by '123456';
flush privileges;
全量备份
innobackupex --defaults-file=/etc/my.cnf --user=backup --password=123456 --socket=/usr/local/mysql/mysql.sock /usr/local/mysqlbackup/
还原全量备份
上一步产生的备份文件是按时间戳产生的目录,我们来看下我们的刚才产生的全备文件
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/4f9847140131b1e420f920e2e1d6d095.jpg)
一 . 如果我们想要使用2020-04-11_08-26-09进行还原,直接进行还原是不行的,需要先对其进行prepare处理,处理成功后才能使用其进行还原
innobackupex --Apply-log --use-memory=100M /usr/local/mysqlbackup/2020-04-11_08-26-09
二. 关闭mysql服务
systemctl stop mysql
systemctl status mysql
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/1bd9461f55c669858dce1f9bdae4e8c6.jpg)
三. 清空mysql data目录
cd /usr/local/mysql/data/
rm -rf *
如果是生产环境直接还原,则不建用删除文件,可以将文件目录重新命名,然后新建一个数据目录,如果还原验证 没有问题,在删除老数据,如果有问题,可以将老数据还原回来
cd /usr/local/mysql/data/
mv data olddata
mkdir data
四. 开始还原
innobackupex --copy-back /usr/local/mysqlbackup/2020-04-11_08-26-09
五. 重置权限给mysql
chown -R mysql:mysql /usr/local/mysql/data
六. 启动mysql服务
systemctl restart mysql
systemctl status mysql
![mysql5.7 使用XtraBackup2.4 全量备份还原](http://www.isolves.com/d/file/p/2020/04-11/2cb846c783486dc4d6044298fe68dd4f.jpg)