XtraBackup 恢复数据

对于MySQL 5.6和5.7,请下载XtraBackup 2.4.9及其以上版本。

yum -y install mysql-community-libs-compat percona-xtrabackup-24

 最好将yum源修改为

http://mirrors.163.com/.help/CentOS7-Base-163.repo

cd /etc/yum.repos.d/
mkdir yum_bak
mv * yum_bak
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all
yum makecache


对于MySQL 8.0,请下载XtraBackup 8.0及其以上版本。

yum install -y percona-xtrabackup-80

3、版本查看
 

innobackupex --version
xtrabackup --version

 如果打算将Percona XtraBackup与MySQL 结合使用,还需要开启tools存储库

percona-release enable-only tools release

4.安装qp文件解压工具qpress-11-linux.x64.tar

wget http://www.quicklz.com/qpress-11-linux-x64.tar

5.解压安装工具

 tar -xvf qpress-11-linux-x64.tar 
 cp qpress /usr/bin/

6.备份mysql之前的数据

mkdir data_temp_bak
mv /data/mysql/* /data/data_temp_bak/ 

7.解压qp文件

#创建一个临时目录upzip_dir
mkdir upzip_dir
#解压文件qp全备文件,让XtraBackup可识别
xbstream -x -p 4 < /root/map.qp -C ./upzip_dir/  
innobackupex --parallel 4 --decompress ./upzip_dir

如果是xtrabackup8.0需要执行 先cd到 upzip_dir 
xtrabackup  --parallel 4 --decompress 

但是这个指令默认会到 upzip_dir/xtrabackup_backupfiles 寻找可以decompress的文件,所以我们最好先在
upzip_dir下创建xtrabackup_backupfiles 并在 xbstream -x -p 4 < /root/map.qp -C ./upzip_dir/xtrabackup_backupfiles  

也可以不用cd 通过参数指定到 upzip_dir 的绝对目录
xtrabackup  --parallel 4 --decompress --target-dir=/root/upzip_dir/xtrabackup_backupfiles/


因为xtrabackup8.0没有innobackupex 这个指令了

8.#读取应用日志,准备恢复数据

innobackupex --apply-log ./unzip_dir

如果是xtrabackup8.0
#全备prepare
xtrabackup --prepare --apply-log-only --target-dir=/root/unzip_dir/xtrabackup_backupfiles

#增备1 prepare ,--target-dir 指向全备目录
xtrabackup --prepare --apply-log-only --target-dir=/root/unzip_dir/xtrabackup_backupfiles  --incremental-dir=/root/unzip_dir/xtrabackup_backupfiles/inc1

#增备2 prepare,--target-dir 指向全备目录。最后一个增备可以不用加apply-log-only,加不加效果一样
xtrabackup --prepare --apply-log-only --target-dir=/root/unzip_dir/xtrabackup_backupfiles  --incremental-dir=/root/unzip_dir/xtrabackup_backupfiles/inc2

9.#已启动的MySQL需要停止服务

systemctl stop mysqld

10.#将恢复的数据 按照my.cnf中配置的进行恢复,其实就是将之前 第7步 恢复的数据从unzip_dir拷贝到my.cnf中配置datadir下面

innobackupex --defaults-file=/etc/my.cnf --copy-back ./unzip_dir

如果是xtrabackup8.0
#拷回数据,将prepare后的备份数据,拷贝到mysql数据目录下
xtrabackup --copy-back --datadir=/opt/mysql8/datas/mysql --target-dir=/root/unzip_dir/xtrabackup_backupfiles

11.启动mysql

systemctl start mysqld

mysql5.7的恢复完重启之后需要用恢复的那个数据库的账号密码链接

如果是 XtraBackup 8.0 进行恢复 可以参照博客

xtrabackup 8.0 增备与还原实践_几多心跳的博客-CSDN博客_xtrabackup8恢复

mysql备份工具命令xtra_mysql备份工具XtraBackup2.4(安装)_weixin_39853892的博客-CSDN博客

XtraBackup8.0版本安装教程 | 码农家园

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值