2020.7.26-阿里云CentOS MySQL导入覆盖数据库-恢复案例记录

故障及环境信息

阿里云 CentOS下部署的MySQL数据库,用户误操作,导入了同名数据库建库,覆盖了生产库。

然后用户删除了新建的库。

恢复思路及过程

1、首先考虑用binlog恢复,但是用户只有近7天的binlog,而生产库已经部署2年,不可能用binlog恢复数据。

2、然后考虑恢复表文件,但是用户导入脚本创建的是同名表文件,然后再删除,所以用文件系统恢复工具,都只能找到覆盖的表文件,而不是生产表文件。

3、最终只能用MySQL数据块扫描恢复的方案。

以下为 MYSQL_RESTORE_DU_v4.2 的扫描结果,注意扫描出的user_center库,是用户最后一次删除的覆盖库,实际生产库表空间,在下面以数字命名的ibd中。
MySQL_Restore_DU_v4.2扫描结果
在数字命名表空间中,根据用户提供的样本数据搜索,定位到正确的生产表空间。
整个恢复过程耗时4天,最终恢复出90%以上数据,客户对恢复结果非常满意。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42745590/article/details/107670950