记一次将阿里云RDS数据库备份到本地windows系统

起因:公司的测试人员在操作测试数据库时,一不小心把users表里的数据清空了,还好是测试数据库要是正式的那就gg了。

数据库是用的阿里云云数据库RDS,阿里云也有文档介绍怎么备份恢复数据库,不过要么是要新建实例需要花钱,要么是需要在Linux系统上操作。我就想在本地windows系统上恢复,最后终于找到了一个解决方法,下面分享给大家。

1、从阿里云上备份文件

进入阿里云数据库RDS管理控制台,进入备份恢复页面,选择一个需要恢复的时间点,点击右边的下载按钮会得到一个.tar压缩文件文件

2、解压文件

1)将.tar文件解压,得到一个没有后缀的文件

2)给文件加个后缀.zip再进行解压得到一个文件夹


3、确保线上数据库与本地数据的引擎一致

4、将需要恢复的表复制到本地

5、将ibdata1文件复制到本地数据库环境(记得把本地的ibdata1文件备份),复制之前将MySQL服务停掉

6、重启数据库

想要恢复的数据就可以在本地查看了

7、本地数据库环境还原

将ibdata1复制到本地环境后,本地数据库的其他表将打不开,所以在得到自己需要的数据后,将之前备份的ibdata1文件还原回来


后续:

       后面又遇到相同的情况,按照上面的步骤恢复数据,碰到了新问题,启动mysql随即又关闭了,在网上搜了一下,在mysql配置文件my.ini加上:

                                               innodb_force_recovery = 6

                                               innodb_purge_threads = 1

然后重启mysql,就可以了。

你可能感兴趣的:(记一次将阿里云RDS数据库备份到本地windows系统)