vlambda博客
学习文章列表

RDS for MySQL 物理备份文件恢复到自建数据库(1)

各位扥扥早,包子油条豆浆带一份!

起立!


好了废话不多说了,如果有用请转发出去。

RDS MySQL版本:5.6.16
自建MySQL版本:5.6.40
OS:CnetOS6

原因

因误操作导致数据错误,需要恢复某个表的数据,阿里云是物理备份,不是逻辑备份,需要把备份导入到自建
的数据库,然后再导出相应的表,进行恢复。

1.从阿里云RDS下载物理备份文件

#从"备份和恢复"界面下载实例的备份,复制外网地址进行下载
wget -c http://rdsbak-hz-v3.oss-cn-hangzhou.aliyuncs.com/......(后面连接省略) -O aliyun_mysql.tar.gz

2.解压

#提前安装好mysql 5.6,默认数据库数据文件位置在/var/lib/mysql下
#把备份的文件解压到数据文件位置
mv /var/lib/mysql /path/to/bak
tar zxf aliyun_mysql.tar.gz -C /var/lib/mysql/

#
把解压出来的mysql配置文件放到/etc下
\cp backup-my.cnf /etc/my.cnf

#
修改my.cnf一些配置
[root@localhost mysql]# cat /etc/my.cnf
# This MySQL options file was generated by innobackupex.

#
The MySQL server
[mysqld]
innodb_checksum_algorithm=innodb
#innodb_log_checksum_algorithm=innodb
innodb_data_file_path=ibdata1:200M:autoextend
innodb_log_files_in_group=2
#innodb_log_file_size=524288000
#innodb_fast_checksum=false
#innodb_page_size=16384
#innodb_log_block_size=512
innodb_undo_directory=.
innodb_undo_tablespaces=0


#
rds_encrypt_data=false
#innodb_encrypt_algorithm=aes_128_ecb
#innodb_force_recovery=2
skip-grant-tables

#
赋予权限
cd /var/lib/mysql/
chown -R mysql.mysql ./*

#
启动mysql
service mysqld start

#
若有报错,查看当前目录的localhost.localdomain.err文件

3.登录(无需输入密码)

[root@localhost mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 24
Server version: 5.6.40 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

到了演示最后了,不知道是否帮助到各位?

如果扥扥们有什么问题,可以文章留言。


有事留言,无事点赞,有用转发!