物理备份恢复到自建数据库
更新时间:2023-08-24
概述
从备份管理产生的备份俗称物理备份,下载的备份数据文件不能直接在本地建立的MySQL数据库上使用,下载后需要通过XtraBackup工具处理。
注意
MySQL8 以前的需要下载对应的xtrabackup 2.4版本,MySQL8及以后版本,需要下载对应的xtrabackup8版本。
操作步骤
处理过程如下:
-
下载最新版本的 xtrabackup 程序完成后:
- xb.gz格式
首先解压 backup.gz,再使用 xtrabackup 中附带的解包工具进行解包,执行命令:
mkdir -p /home/mysql/data_dir && gzip -d -c backup.gz | xbstream -x -C /home/mysql/data_dir
。 -
tar.gz格式或qp.xb格式
使用 xtrabackup 中附带的工具 xbstream(8.0版本) 进行解包解压,执行命令:
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,再使用 xtrabackup 中附带的解包工具进行解包,执行命令:
- 完成解压及解包后应用 innodb的redo-log,执行命令:
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 后,重新授权数据库账户。
- 重启数据库。
- 使用新账号密码登录数据库。