xtrabackup工具下载安装使用教程
一、下载
官网地址:https://www.percona.com/downloads

进入下载页面后往下找到percona xtrabackup 工具,然后选择对应的版本和平台后下载

下载好后根据文档安装使用
文档官网:https://docs.percona.com/percona-xtrabackup/8.0/index.html

注意:
# 注意一
在 Percona XtraBackup 的安装包中,通常会包含以下三个 RPM 包:
xtrabackup 主包:包含核心工具 xtrabackup 和 innobackupex,用于备份和恢复 MySQL 数据库。需要安装
debuginfo 包:包含调试信息,用于开发和故障排查。不需要安装
test 包:包含测试工具和脚本,用于验证安装和功能,不需要安装
# 注意二
随着Percona XtraBackup 8.0 的推出,Percona XtraBackup 2.4将继续支持MySQL和Percona Server 5.6和5.7数据库。由于新的MySQL重做日志和数据字典格式的改变,Percona XtraBackup 8.0.x版本将仅与MySQL 8.0.x和Percona Server for MySQL 8.0.x兼容。也就是说Percona XtraBackup 8.0 是不向下兼容的。
# 注意三
xtrabackup 和 innobackupex 是 Percona XtraBackup 工具的两个主要组件。在 XtraBackup 2.3 和2.4版本中,innobackupex 的功能逐渐整合到 xtrabackup 中(还支持innobackupex命令),8.0及以上的Percona XtraBackup 彻底移除了innobackupex命令。innobackupex 命令是对xtrabackup命令的封装,简化了xtrackup命令的使用。
# 注意四
该工具也支持直接二进制包解压使用,在select plathform 那里选择 linux generic即可,不要选择具体的哪个平台,这将会让你下载rpm包进行安装。
二、安装
# 1、安装依赖
sudo yum install libev libgcrypt openssl zlib libaio perl-DBD-MySQL perl-Digest-MD5
# 2、安装rpm包
rpm -ivh percona-xtrabackup-80-8.0.32-26.1.el7.x86_64.rpm
# 以上两步就安装完成了,执行下面查看是否安装成功
xtrabackup -v
# 如果是在一个无法连接外网,也没有yum源的环境下,需要先自己下载好所有依赖包的rpm包,然后再安装,下面这些rpm包可以通过以下这种方式获得:
1、到对应的网站下载,比较难找
2、使用yumdownloader package_name 命令
首先你需要有个自己的环境,可以联网的,然后这个命令可以把rpm包下载下来,下载之后再上传到没有网也没有yum源的那个环境安装即可
rpm -ivh libev-4.15-7.el7.x86_64.rpm
rpm -ivh perl-Digest-1.17-245.el7.noarch.rpm
rpm -ivh perl-Digest-MD5-2.52-3.el7.x86_64.rpm
rpm -ivh perl-Data-Dumper-2.145-3.el7.x86_64.rpm
rpm -ivh perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64.rpm
rpm -ivh perl-Compress-Raw-Zlib-2.061-4.el7.x86_64.rpm
rpm -ivh perl-IO-Compress-2.061-2.el7.noarch.rpm
rpm -ivh perl-Net-Daemon-0.48-5.el7.noarch.rpm
rpm -ivh perl-PlRPC-0.2020-14.el7.noarch.rpm
rpm -ivh perl-DBI-1.627-4.el7.x86_64.rpm
rpm -ivh perl-DBD-MySQL-4.023-6.el7.x86_64.rpm
rpm -ivh percona-xtrabackup-80-8.0.32-26.1.el7.x86_64.rpm
三、使用教程
# 全量备份
innobackupex --defaults-file=/home/mysql/mysql/my-srp.cnf -uroot -p****** --parallel=4 /opt/srpbackup/
# 增量备份,注意:增量备份必须基于一个已有的全量或增量备份,如果是第二次增量备份,则必须基于上一次的增量备份,以此类推
innobackupex --defaults-file=/home/mysql/mysql/my-srp.cnf -uroot -p****** --parallel=4 --incremental-basedir=上一次增量备份或者全量备份的目录 --incremental /path/to/new/incremental/backup
# 恢复,假如有全量和两次增量备份
1、准备全量备份
innobackupex --apply-log --redo-only /backup/full
2、合并第一个增量备份到全量备份
innobackupex --apply-log --redo-only --incremental-dir=/backup/inc1 /backup/full
3、合并第二个增量备份到全量备份
innobackupex --apply-log --redo-only --incremental-dir=/backup/inc2 /backup/full
4、对最终合并后的备份进行整理
innobackupex --apply-log /backup/full
然后把备份拷贝到数据库的目录,给目录授权启动即可
# tips
# 也可以边备份边传输
innobackupex --user=root --password=Envisi0n1234! --defaults-file=/etc/my.cnf --stream=tar /dataMysql/xbkbackup/ | ssh root@10.65.61.51 \ "cat - > /dataMysql/mysql/xbkbackup/db.tar"
# 也可以备份完再拷贝到别处保存
innobackupex --defaults-file=/home/mysql/mysql/my-srp.cnf -uroot -p1qaz#EDC --parallel=4 /opt/srpbackup/
scp -r 2023-06-15_13-25-55/ root@172.31.63.83:/opt/mysql/mysql-mam0301
# 8.0以后的备份命令(不再支持innobackupex)
xtrabackup --defaults-file=/data/app/data3306/etc/my.cnf --backup -uroot -H127.0.0.1 -p111111 -P3306 --parallel=2 --target-dir=/data/db_backup
四、xtrabackup工具备份原理

浙公网安备 33010602011771号