开源软件Percona Xtrabackup可以用于对数据库进行备份恢复,您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,本文将介绍详细的操作步骤。
注意事项
本文使用Linux7的操作系统以及MySQL5.7版本为例进行演示。
-
本地MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。
说明 由于软件限制,目前只支持将云数据库MySQL的备份文件恢复到安装在Linux系统中的自建MySQL数据库中。
- 操作系统中已安装数据恢复工具Percona XtraBackup。MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3。MySQL 5.7版本需要安装 Percona XtraBackup 2.4。可以从Percona XtraBackup官网下载安装,安装指导请参见官方文档 Percona XtraBackup 2.3、Percona XtraBackup 2.4。
备份恢复操作步骤
- 登录RDS管理控制台。
- 在页面左上角,选择实例所在地域。
- 找到目标实例,单击实例ID。
- 在左侧导航栏中单击备份恢复。
- 选择数据备份标签页。
- 选择查询的时间范围,然后单击查询。
- 在数据备份列表中,找到要下载的数据备份,并单击其右侧的下载。
- 在实例备份文件下载窗口,单击复制外网地址,获取数据备份文件外网下载地址。
- 登录云服务器ECS。
- 执行如下命令,下载数据备份文件。
wget -c '<数据备份文件外网下载地址>' -O <自定义文件名>.tar.gz
说明
- -c:启用断点续传模式。
- -O:将下载的结果保存为指定的文件(使用URL中包含的文件名后缀 .tar.gz 、.xb.gz 或 _qp.xb)。
- 执行如下命令,解压已下载的数据备份文件。
说明 本文以自定义路径 /home/mysql/data为例,您可以根据实际情况将其替换成实际路径。
目前物理备份集文件有3种格式:
- tar 压缩包 (.tar.gz 后缀)
- xbstream 压缩包 (.xb.gz 后缀)
- xbstream 文件包 (_qp.xb 后缀)
对于tar 压缩包 (.tar.gz 后缀),使用命令:
tar -izxvf <数据备份文件名>.tar.gz -C /home/mysql/data
对于xbstream 压缩包 (.xb.gz 后缀),使用命令:
gzip -d -c <数据备份文件名>.xb.gz | xbstream -x -v -C /home/mysql/data
对于xbstream 文件包 (_qp.xb 后缀),使用命令:
cat <数据备份文件名>_qp.xb | xbstream -x -v -C /home/mysql/data
innobackupex --decompress --remove-original /home/mysql/data
说明 -C:指定文件要解压到的目录。可选参数,若不指定就解压到当前目录。
- 执行如下命令,查询解压后生成的文件。
命令执行成功后,系统会返回如下结果,其中蓝色字体为生成备份文件时RDS实例所包含的数据库。
- 执行如下命令,恢复解压好的备份文件。
innobackupex --defaults-file=/home/mysql/data/backup-my.cnf --apply-log /home/mysql/data
若系统返回如下类似结果,则说明备份文件已成功恢复到本地数据库。
- 为避免版本问题,需修改backup-my.cnf参数,具体操作步骤如下。
- 执行如下命令,以文本方式编辑backup-my.cnf文件。
vi /home/mysql/data/backup-my.cnf
- 执行如下命令,注释掉如下参数。
说明 如果本地使用的是MyISAM引擎,和阿里云的InnoDB不兼容,需要多注释掉如下参数并增加skip-grant-tables参数:
#innodb_log_checksum_algorithm=strict_crc32
#redo_log_version=1
skip-grant-tables
- 按Esc键,然后输入
:wq
并回车进行保存。
- 执行如下命令,修改文件属主,并确定文件所属为MySQL用户。
chown -R mysql:mysql /home/mysql/data
- 执行如下命令,启动MySQL进程。
mysqld_safe --defaults-file=/home/mysql/data/backup-my.cnf --user=mysql --datadir=/home/mysql/data &
-
执行如下命令,登录MySQL数据库以验证进程启动成功。
若系统返回如下结果,进程启动成功,则说明已成功执行参数注释和修改文件属主。
阿里云代理商凯铧互联提供阿里云服务器/企业邮箱等产品的代购服务,同样的品质,更多贴心的服务,更实惠的价格。 阿里云代理商凯铧互联会为您提供一对一专业全面的技术服务,同时还能为您提供阿里云其他产品购买的专属折扣优惠。通过凯铧互联购买可以获得折上折优惠!若您需要帮助可以直接联系我方客服,阿里云代理商凯铧互联专业技术团队为您提供全面便捷专业的7x24技术服务。 电话专线:136-5130-9831,QQ:3398234753。
为什么选择我们:北京凯铧互联科技有限公司(简称凯铧互联)由多名前阿里云资深技术专家创立,核心员工来自阿里巴巴、腾讯等,作为阿里云,腾讯云百度云,金山云,华为云重要的合作伙伴,专注于为企业用户提供云计算及云计算的解决方案。总部设在北京,并在内蒙设有办事处。做为一家综合性方案商,凯铧互联向各行业用户提供基于云计算的各种解决方案。为用户获得优质服务的同时,秉承"专业规划、周到服务"的服务理念,根据用户的实际情况,充分考虑各种网络资源的特点及功效,为用户量身定做一套适合于其实际应用需求的网络应用方案。帮助用户利用互联网的力量展开新的营销方式,并大大缩短了项目实施周期,获得用户的一致好评。