公有云mysql物理备份恢复自建数据库

本文介绍使用XtraBackup工具,将云mysql数据库物理备份恢复到自建数据库

PS:

为节约存储空间,云数据库 MySQL 的物理备份和逻辑备份文件,都会先经过 qpress 压缩,后经过 xbstream 打包(xbstream 为 Percona 的一种打包/解包工具)进行压缩与打包

环境:MySQL5.7\CentOS7.6\

一、源码安装

1、下载Percona-XtraBackup-2.4.6

官方地址:https://www.percona.com/downloads/Percona-XtraBackup-2.4/LATEST/

2、上传到linux服务器

解压之前先安装下依赖包:

yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL

yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr

a、解压

tar -xf Percona-XtraBackup-2.4.6-r8ec05b7-el7-x86_64-bundle.tar -C ./percona/

b、rpm安装报错如下:

原因:缺少libev.so.4、perl-Digest-MD5包 解决:

下载libev安装包

rpm -ivh libev-4.15-1.el6.rf.x86_64.rpm

yum -y install perl-Digest-MD5

c、rpm安装XtraBackup

3、下载qpress工具

wget -d --user-agent="Mozilla/5.0 (Windows NT x.y; rv:10.0) Gecko/20100101 Firefox/10.0" http://www.quicklz.com/qpress-11-linux-x64.tar

tar -xf qpress-11-linux-x64.tar -C /usr/local/bin/

source /etc/profile

二、下载物理备份

备注:下载地址加上单引号

三、恢复数据

1、使用xbstream命令将备份文件解包到自己数据库目录下

2、使用如下命令将.qp结尾的文件解压出来

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

3、执行如下命令进行apply log 操作

4、修改配置文件并配置文件属性

vim /data/mysql/backup-my.cnf

5、启动mysql服务验证数据是否恢复

a、启动mysql服务

/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=mysql --datadir=/data/mysql &

b、过滤服务是否正常启动

c、验证数据恢复

腾讯云官方文档:https://cloud.tencent.com/document/product/236/33363