数据库数据恢复—MySQL数据库表误删除记录的数据恢复案例

电子说

1.3w人已加入

描述

数据库数据恢复环境:
一台本地windows sever操作系统服务器,服务器上部署mysql数据库单实例,引擎类型为innodb,表内数据存储所使用表空间类型为独立表空间。无数据库备份,未开启binlog。

数据库故障&分析:
工作人员在执行Delete命令删除数据时未添加where子句进行筛选,导致全表数据被删除,删除后未对该表进行其他操作。
在本案例中,由于mysql数据库没有备份也未开启binlog日志,无法直接还原数据库。
针对引擎类型为innodb的mysql 数据库误删除导致记录丢失的数据恢复方案有三种:备份还原、binlog还原和记录深度解析还原。对于本案例来说前两种方案不适用,只能使用记录深度解析的方案恢复删除的数据。此方案原理:模拟innodb引擎记录管理方式,根据表结构信息将二进制文件解析为字符记录。

数据库数据恢复流程:
1、用户方将表结构文件及表数据文件(.ibd)发送给数据库数据恢复工程师。
2、北亚企安数据恢复工程师团队针对此类mysql数据库(innodb引擎,无备份,binlog未开启)误删除故障进行过深入研究,开发了针对此类故障的mysql数据库数据恢复工具。使用这个北亚企安自主研发的mysql数据库数据恢复工具来恢复数据。

数据恢复

北亚企安数据恢复——MySQL数据恢复

数据恢复

北亚企安数据恢复——MySQL数据恢复



本案例中用户方提供了表结构脚本,使用数据恢复工具中的5+3功能进行恢复。
读取表结构信息:

数据恢复

北亚企安数据恢复——MySQL数据恢复

数据恢复

北亚企安数据恢复——MySQL数据恢复



解析记录:

数据恢复

北亚企安数据恢复——MySQL数据恢复



本数据恢复工具默认将记录提取为SQL备份格式,解析完成后还原到数据库并查看结果:

数据恢复

北亚企安数据恢复——MySQL数据恢复



3、随机挑选表内数据交由用户方验证,并统计恢复记录总数。用户方经过跨部门多方验证后确认恢复数据完整正确,总记录数符合原表内记录条数。本次数据恢复工作成功。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分