阿里云RDS本地恢复至MySQL

阿里云RDS数据恢复至本地MySQL数据库

本地MySQL数据库版本必须和阿里云RDSMySQL数据库版本一致

参考自恢复云数据库MySQL的备份文件到自建数据库

1、安装 percona-Xtrabackup

  RDS MySQL使用percona-Xtrabackup对MySQL数据库进行备份。所以使用该软件对数据进行恢复
该软件版本依据阿里云RDS的MySQL版本而定,阿里云MySQL版本5.6及以前版本,使用2.3版本;5.7及以后使用2.4或以上版本。具体请参考阿里云官网。

  以上链接中包含有具体安装指导。最简单的方式为第二种,下载对应版本的rpm包,使用yum install xxx.rpm安装。

2、解压缩下载的备份文件

1、下载备份文件:wget -c '待下载备份的外网链接' -O 自定义文件名.tar.gz

  • 对于tar压缩文件(.tar.gz),使用命令:

  tar -izxvf test.tar.gz -C /data/msyql

  • 对于xbstream 压缩包(.xb.gz),使用命令:

  gzip -d -c test.xb.gz | xbstream -x -v -C /data/mysql

以上 ‘test.tar.gz 和test.xb.gz均为下载下来的本份文件’,/data/mysql目录将作为本地MySQL的新的datadir目录,需事先创建好。

2、使用一下命令恢复解压好的备份文件

innobackupex --defaults-file=/data/mysql/backup-my.cnf --user=root --apply-log /data/mysql/

看到如下输出,则恢复完成:

3、打开/data/mysql/backup-my.cnf,注释掉如下参数:

4、修改/data/mysql所属用户和组

chown -R mysql:mysql /data/mysql

5、启动MySQL进程

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

6、查看进程

ps -ef |grep 'mysqld'

3、登陆数据库

mysql -uroot

直接登录,会发现登录失败,可在启动MySQL服务时,添加--skip-grant-tables,以跳过密码验证。(网上都说RDS备份的数据库,没有密码,我没发现,所以有此操作)

坚持学习,坚持分享,您的支持将鼓励我继续创作。
0%