CDN加速

文档中心 云数据库MySQL 操作指南 物理备份恢复至自建数据库

物理备份恢复至自建数据库

更新时间:2020-10-22 17:58:20

操作说明

开源软件Percona Xtrabackup可以用于对数据库进行备份恢复,您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中。
说明:由于软件限制(Percona Xtrabackup不支持Windows),目前只支持将云数据库MySQL的备份文件恢复到安装在Linux系统中的自建MySQL数据库中。

前提条件

  • 已下载MySQL全量物理备份文件到本地。
  • 操作系统中已安装数据恢复工具Percona XtraBackup,您可以从Percona XtraBackup官网下载安装。
  • MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3,安装指导请参见官方文档Percona XtraBackup 2.3
  • MySQL 5.7版本需要安装 Percona XtraBackup 2.4,安装指导请参见官方文档Percona XtraBackup 2.4
  • 自建MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。

操作步骤

以下操作以MySQL 5.7和默认数据目录/var/lib/mysql为例进行说明,MySQL 5.6版本启停服务改为mysql即可。

  1. 解密(解密部分暂时需要联系网宿云技术支持代为执行):
    openssl enc -d -aes-256-cbc -salt -pass pass:{密码} -in xxx.xbstream.gz.enc -out xxx.xbstream.gz,解密后得到xxx.xbstream.gz压缩文件。
  2. 将上述得到的备份压缩文件拷贝至需要恢复的数据库主机。
  3. 停止mysql服务:
    service mysqld stop
  4. 清空数据目录:
    rm -rf /var/lib/mysql/*
  5. 解压:
    gzip -d -c xxx.xbstream.gz | xbstream -x -v -C /var/lib/mysql
    说明:-C:指定文件要解压到的目录。可选参数,若不指定就解压到当前目录。
  6. 恢复:
    sudo innobackupex --defaults-file=/var/lib/mysql/backup-my.cnf --apply-log --redo-only --ibbackup=xtrabackup /var/lib/mysql
  7. 修改权限为mysql:
    chown -R mysql:mysql /var/lib/mysql
  8. 启动mysql服务:
    service mysqld start