特别说明:
- 阿里云Mysql版RDS采用开源软件 percona-Xtrabackup(点我下载,建议下载2.2.9 或更新的版本)对实例进行备份;本地环境须与阿里云RDS采用同一版本的Mysql,且必须使用percona-Xtrabackup进行还原才可以操作成功。
- RDS备份包为压缩包,需使用工具进行解压(解压工具);解压命令如下:
bash rds_backup_extract.sh -f backup.tar.gz/back.xb.gz -C directory
参数如下:- -f:指定要解压的备份集文件
- -C:指定解压到的目录;-C参数是可选的,如果不指定就解压到当前目录,如bash rds_backup_extract.sh -f backup.tar.gz。
注:需要通过 bash 来执行 rds_backup_extract.sh 脚本文件。
操作步骤:
- 在服务器上解压备份文件
bash rds_backup_extract.sh -f /home/mysql/backup/hins575175_xtra_20150429091224.tar.gz -C /home/mysql/data
解压后文件如下: - 在服务器上恢复数据文件
执行以下命令恢复备份文件:
innobackupex --defaults-file=/home/mysql/data/backup-my.cnf --apply-log /home/mysql/data
- 在服务器上修改配置文件
修改配置文件backup-my.cnf并注释掉innodb_fast_checksum、innodb_page_size 、innodb_log_block_size四项 - 在服务器上修改文件属组
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内不存在RDS上建的用户,需要重建。
delete from mysql.db where user<>’root’ and char_length(user)>0;delete from mysql.tables_priv where user<>’root’ and char_length(user)>0;flush privileges;