首页 » Linux » xtrabackup备份使用说明

xtrabackup备份使用说明

 
文章目录

xtrabckup 安装

针对不同的mysql版本需要安装不同的版本,mysql 8.x的版本安装 xtrabackup-8.0,mysql 5.x安装xtrabackup-2.4版本

相关下载网址如下:

https://downloads.percona.com/downloads/Percona-XtraBackup-LATEST/Percona-XtraBackup-8.0.27-19/binary/redhat/7/x86_64/percona-xtrabackup-80-8.0.27-19.1.el7.x86_64.rpm

https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.24/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.24-1.el7.x86_64.rpm

http://repo.percona.com/release/7.8/os/x86_64/

https://www.percona.com/doc/percona-xtrabackup/2.4/installation/yum_repo.html

rpm安装方法

下载对应的rpm包之后,

wget https://downloads.percona.com/downloads/Percona-XtraBackup-LATEST/Percona-XtraBackup-8.0.27-19/binary/redhat/7/x86_64/percona-xtrabackup-80-8.0.27-19.1.el7.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.24-1.el7.x86_64.rpm

yum安装方法

yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm

percona-release enable-only tools release

yum install percona-xtrabackup-24

二进制安装

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.21/binary/tarball/percona-xtrabackup-2.4.21-Linux-x86_64.glibc2.12.tar.gz

tar xvf percona-xtrabackup-2.4.21-Linux-x86_64.glibc2.12.tar.gz

备份和恢复使用说明:

大概步骤:

  1. 全备
  2. 准备;全备之后的内容不能直接使用,需要准备
  3. 停mysql服务,对mysql数据目录进行备份,因为需要用到里面的binlog,
  4. 复制备份的数据到mysql本身的数据目录,
  5. 更改mysql数据目录属主和属组为mysql,chown -R mysql:mysql /data/mysql
  6. 启动mysql服务
  7. 查看备份目录中cat xtrabackup_binlog_info binlog位置,从这个位置开始进行增量恢复

使用xtrabckup备份,准备及恢复相关命令:

全备:
xtrabackup --defaults-file=/etc/my.cnf --user=root --host=127.0.0.1 --password="123456" --backup --target-dir=/data/backup/xtrabackup_dir/
准备:
xtrabackup --prepare --target-dir=/data/backup/xtrabackup_dir/
还原:
xtrabackup --defaults-file=/etc/my.cnf --copy-back --target-dir=/data/backup/xtrabackup_dir/ 
上面命令会读取my.cnf的配置中的data目录,然后把备份的文件复制到data目录,所以要先备份原来的data目录,然后清空

还原就是复制文件,所以不用xtrabackup命令也是可以的,可以用rsync或者cp,保证备份文件全部复制到data目录就可以

binlog增量恢复

上面全备可以查看binlog位置:cat xtrabackup_binlog_info,也就是全备到这个位置,增量恢复就从这个位置开始,假设全部恢复可以:

mysqlbinlog --start-postion=120 bin-log.00001 >./increase.sql
mysql -uroot -p <./increase.sql

2、假设恢复某个时间段
先查看上面位置的时间,然后执行以下:
mysqlbinlog --start-datetime='2022-02-16 01:00:02' --stop-datetime='2022-02-16 12:00:05' >./increase.sql
mysql -uroot -p <./increase.sql

如果是主从的话,恢复到具体时间点还是要分析一下主库的binlog和从库的binglog时间点问题

参考文档:

https://www.percona.com/doc/percona-xtrabackup/2.4/manual.html 
https://www.percona.com/doc/percona-xtrabackup/2.4/innobackupex/creatingabackup_ibk.html 
https://www.percona.com/doc/percona-xtrabackup/2.4/xtrabackupbin/xtrabackupbinary.html

https://www.cnblogs.com/f-ck-need-u/p/9018716.html

原文链接:xtrabackup备份使用说明,转载请注明来源!

0