• 【北亚数据恢复】未加where子句的命令操作导致MySQL数据库数据丢失的数据恢复案例


    环境:
    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备份格式,等待解析完毕后还原到数据库查看结果(为保障客户隐私关键信息已打码):


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

  • 相关阅读:
    终端程序开机后自动运行
    SQLite 3 使用前要知道的
    JS 框架 :后台系统完整的解决方案
    JS 继承:extend、mixin 和 plugin(三)
    JS 控件事件
    JS 控件 jQuery扩展函数
    Js 控件编写 继承:extend、mixin和plugin(一)
    关于js new Date() 出现NaN 的分析
    js Dialog 实践
    JS控件 生命周期
  • 原文地址:https://www.cnblogs.com/frombyte/p/15846179.html
Copyright © 2020-2023  润新知