关于mysql:北亚数据恢复输入错误命令导致MySQL数据库全表数据被删除的数据恢复案例分享

2次阅读

共计 624 个字符,预计需要花费 2 分钟才能阅读完成。

环境:
windows2008 r2;
mysql5.6 单实例,引擎类型为 innodb,表内数据存储所应用表空间类型为独立表空间;
未进行数据库备份,未开启 binlog。

故障:
因为人为误操作应用 Delete 命令删除数据时未增加 where 子句进行筛选,导致全表数据被删除,删除后未对该表进行任何操作。

本案例 MySQL 数据库数据恢复剖析:
1、故障类型:因为未对生产环境进行备份也未开启 binlog 日志,无奈间接还原数据库,属于典型的表内 mysql delete 数据误删除。
2、故障剖析与可行性计划制订:对于 mysql innodb 误删除导致记录失落的复原计划有三种:备份还原、binlog 还原和记录深度解析。对于本案例前两种计划不实用,只能应用记录深度解析的形式进行复原。此复原计划的原理为模仿 innodb 引擎记录治理形式,依据表构造信息将二进制文件解析为字符记录。

本案例 MySQL 数据库数据恢复过程:
1、获取数据文件:管理员将表构造文件及表数据文件(.ibd)发送给北亚数据恢复工程师。
2、应用北亚数据恢复核心自研的数据恢复工具进行复原:

在本案例中数据库管理员提供了表构造脚本,能够应用本工具中的 5 + 3 性能进行复原。
首先读取表构造信息:

开始解析记录:

本工具默认将记录提取为 SQL 备份格局,期待解析结束后还原到数据库查看后果(为保障客户隐衷要害信息已打码):

验收数据:
随机筛选表内数据交由管理员验证,并统计复原记录总数。通过验证后数据正确,总数合乎原表内记录条数。

正文完
 0