物理备份恢复到自建数据库
更新时间:2024-08-01
概述
从备份管理产生的数据备份为物理备份,物理备份数据文件不能直接在本地建立的MySQL数据库上使用,下载后需要通过Xbstream工具解包解压和XtraBackup工具进行恢复。
注意
MySQL 所有版本都需要下载 xbstream 8.0.5及以上版本。 MySQL 5.5、5.6和5.7版本需要下载 xtrabackup 2.4版本,MySQL 8.0及以上版本,需要下载对应的xtrabackup 8.0版本。
操作步骤
处理过程如下:
-
下载最新版本的 xbstream 程序完成后:
- xb.gz格式
首先解压 backup.gz,再使用解包工具 xbstream 进行解包,执行命令:
mkdir -p /home/mysql/data_dir && gzip -d -c backup.gz | xbstream -x -C /home/mysql/data_dir
。 -
tar.gz格式或qp.xb格式
使用 xbstream 进行解包解压,执行命令:
mkdir -p /home/mysql/data_dir && xbstream --extract --parallel=2 --decompress --decompress-threads=2 --directory=/home/mysql/data_dir < backup.tar.gz;
。
- xb.gz格式
首先解压 backup.gz,再使用解包工具 xbstream 进行解包,执行命令:
- 完成解压及解包后,应用数据备份的增量物理日志,执行命令:
xtrabackup --prepare --defaults-file=/home/mysql/data_dir/backup-my.cnf --target-dir=/home/mysql/data_dir
。 - 本地安装 MySQL 数据库,保持数据库版本与云数据库 RDS 版本一致。
- 使用 /home/mysql/data_dir 文件夹作为数据目录,添加 --skip-grant-tables 参数启动数据库。
- 登录数据库执行 flush privileges 后,重新授权数据库账户。
- 重启数据库。
- 使用新账号密码登录数据库。