开头语:
生产中,用到xtrabackup热备的概率几乎是100%,为什么我敢这样肯定呢,因为我听很多人说——来自菜鸟的蜜汁自信!
实验开始之前提醒:
目前percona-xtrabackup-24-2.4.18-1.el8.x86_64.rpm不支持CentOS 8上的mariadb-10.3版本
准备
1、两台主机,在此我准备了10.0.0.8和10.0.0.18
2、两台主机都需要安装xtrabackup
软件的版本和mysql版本一样 我用的是8.0 这款比较新,另外一款软件是2.4的,操作一样
软件下载链接:https://www.percona.com/downloads/Percona-XtraBackup-LATEST/
下载途中红箭头标注的版本
安装 yum -y install percona-xtrabackup-80-8.0.23-16.1.el8.x86_64.rpm (两台都要!)
开始操作
第一步: 在原主机做完全备份到/backup 完整备份:
mkdir /backup 备份是放在这个目录下
xtrabackup -uroot --backup --target-dir=/backup/base
提示备份成功即可
并且可以看到base文件夹已经生成
查看具体信息:
查看文本文件
第二步:#目标主机无需创建/backup目录,直接复制目录本身
执行 scp -r /backup/ 目标主机:/
scp -r /backup/ 10.0.0.18:/ 直接拷贝到目标主机根下面:
第三步:在目标主机上还原 在10.0.0.18上查看拷贝过来的数据
1)预准备:确保数据一致,提交完成的事务,回滚未完成的事务
首先查看文件大小 du -sh /backup/base/
执行: xtrabackup --prepare --target-dir=/backup/base
prepare是预准备的意思 将未处理的事务回滚
执行后要确保可以看到结尾有提示完成;
执行完成后查看大小 确认完成
第四步:复制到数据库目录 注意:数据库目录必须为空,MySQL服务不能启动
执行xtrabackup --copy-back --target-dir=/backup/base
还原属性chown -R mysql:mysql /var/lib/mysql
执行ll /var/lib/mysql 查看数据
启动服务,可以登录mysql 操作完成: service mysqld start
至此操作完成
谢谢观赏