1.下载备份文件

注意数据库子版本要高于还原版本!!
比如

wget -c 'xxx' -O /data/test.xb

2.安装工具

安装 zstd
CentOS 安装
yum install epel-release
yum install dnf
dnf install zstd

安装xbstream,qpress
2024-03-19T02:20:39.png

yum -y install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
或者
$ wget https://repo.percona.com/yum/percona-release-latest.noarch.rpm
$ rpm -ivH percona-release-latest.noarch.rpm

$ yum list | grep percona
yum install percona-xtrabackup-24(list中合适的版本)

percona-release enable-only tools release

$ yum install qpress

其中qpress也可以从腾讯云下载

wget -d --user-agent="Mozilla/5.0 (Windows NT x.y; rv:10.0) Gecko/20100101 Firefox/10.0" https://docs-tencentdb-1256569818.cos.ap-guangzhou.myqcloud.com/qpress-11-linux-x64.tar
tar -xf qpress-11-linux-x64.tar -C /usr/local/bin
source /etc/profile

3.解压xb文件

xbstream -x --decrypt=AES256 --encrypt-key-file=<备份密钥文件> --parallel=2  -C /data/mysql < /data/test.xb

未开启备份加密时,解包备份文件命令为:xbstream -x -C /data/mysql < /data/test.xb。
本文目标目录以 /data/mysql 为数据文件恢复存储,您可根据实际情况替换为实际路径。
/data/test.xb 替换为您的备份文件

实战:

4.Prepare 备份文件

备份解压出来之后,执行如下命令进行 apply log 操作。

xtrabackup --prepare  --target-dir=/data/mysql

5.修改配置文件

执行如下命令打开 backup-my.cnf 文件。

vi /data/mysql/backup-my.cnf

说明
本文以目标目录 /data/mysql 为例,您可以根据实际情况将其替换成实际路径。

由于存在的版本问题,请将解压文件 backup-my.cnf 中如下参数进行注释。

innodb_checksum_algorithm
innodb_log_checksum_algorithm
innodb_fast_checksum
innodb_page_size 
innodb_log_block_size
redo_log_version

6.修改文件属性

修改文件属性,并检查文件所属为 mysql 用户。

chown -R mysql:mysql /data/mysql

7.启动 mysqld 进程并登录验证

ln -s /usr/local/mysql-8.0/bin/mysqld_safe /usr/bin

mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=mysql --datadir=/data/mysql &
mysql -uroot
mysqld_safe是个脚本,它会检测当前mysqld进程是否存在

最后修改:2024 年 03 月 19 日
如果觉得我的文章对你有用,请随意赞赏