【玩转云数据库】云Mysql数据库逻辑备份文件还原数据库教程

2023-11-11 20:05:05 浏览数 (1)

说明

腾讯云Mysql云数据库的备份文件分为逻辑备份、物理冷备两种,扩展名均为.xb文件,本教程主要介绍如何将逻辑备份文件还原为.sql文件。

本文主要资料来自于腾讯云官方文档:使用逻辑备份恢复数据库,本人结合实际操作经验,对文档进行了细化补充,以至于无需刻意学习,只需复制粘贴就可以大概率可以成功还原数据库。

准备事项

1、CentOS 7.x 64服务器

2、Mysql云数据库逻辑备份文件(从云数据库控制台可以下载逻辑备份,扩展名为.xb)

操作步骤

一、安装解包软件

1、由于备份文件先经过 qpress 压缩,后经过 xbstream 打包(xbstream 为 Percona 的一种打包/解包工具),所以先用 xbstream 将其解包。xbstream 工具可以通过添加 Percona 的 yum 源安装。

代码语言:javascript复制
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm

2、安装xtrabackup-24版本

代码语言:javascript复制
yum install percona-xtrabackup-24

二、将备份文件解包至目标目录

先将下载的Mysql云数据库的逻辑备份文件重命名为纯英文.xb(如bakup.xb),上传至/root目录,这里使用/data做为还原数据库的目标目录

代码语言:javascript复制
xbstream -x -C /data < ~/bakup.xb

解包后进入到/data目录,解压出的文件均为.qp结尾的扩展名。(如果只有一个库,则仅有对应库名称.qp一个文件,否则将有多个库名称.qp文件)

三、解压备份文件

因备份文件经过 quicklz 算法压缩,所以需要进行解压。需下载 qpress工具,下载之后通过以下命令解出 qpress 二进制文件。

1、通过如下命令下载 qpress 工具(选自腾讯云文档)

代码语言:javascript复制
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.myzijiebao.com/qpress-11-linux-x64.tar

2、通过如下命令解出 qpress 二进制文件。

代码语言:javascript复制
tar -xf qpress-11-linux-x64.tar -C /usr/local/bin
 
source /etc/profile

3、解压.qp文件有以下2种方法

(1)使用命令将目标目录/data下所有以.qp结尾的文件都解压出来。

代码语言:javascript复制
xtrabackup --decompress --target-dir=/data

xtrabackup默认在解压缩时不删除原始的压缩文件,若想解压完删除原始的压缩文件,可在上面的命令中加上 (2个-)-remove-original 参数。

(2)使用命令指定解压某个.qp文件

代码语言:javascript复制
# 将文件testdb_bak.sql.qp解压至当前目录
qpress -d testdb_bak.sql.qp ./

四、SQL 备份文件

备份解压出来之后,就可以看到数据库名称.sql文件,即可使用此文件还原数据库。

0 人点赞