乐趣区

关于mysql:北亚数据恢复误操作导致云服务器表被truncate表内数据被delete的数据恢复

云服务器具备上面这些劣势,采纳云服务器计划的用户群体越来越大。

一、应用云服务器不须要购买硬件设施,不须要专门的机房托管这些服务器,只须要依照所需的资源领取肯定的费用就能租用须要的资源。数据中心不仅提供硬件环境和系统软件资源,还提供咨询服务,将各种硬件和系统软件资源在治理后盾进行图形化展现,不便操作,无需业余的技术去配置服务器、数据库等这些业余简单操作。

二、绿色环保,缩小硬件设施的购买和折旧、淘汰老本。

三,云服务器供应商提供业余技术人员对服务器进行保护,节约了设施的运行保护、服务的搭建配置等老本,企业能够将更多资源投入到本身的业务中。

北亚数据恢复核心遇到越来越多云服务器的数据恢复问题。在这分享一个云服务器的数据恢复案例。

环境:

某云 ECS 网站服务器,

linux 操作系统,

mysql 数据库版本号 5.6。

故障:

在执行数据库版本更新测试时,将本应在测试库中执行的 sql 脚本放到生产库中去执行,导致局部表被 truncate,另有局部表内大量数据被 delete。该实例内数据表均采纳 innodb 作为默认存储引擎。

云服务器数据恢复流程:

1. 因为 ECS 内有其余业务仍在运行,为保障被 truncate 表底层数据不被毁坏,北亚数据恢复工程师先对 mysql 的 data 目录所在分区进行备份。

2. 因为须要复原的 12 个表内不存在大字段类型值和 myisam 引擎表,为节约数据传输工夫,扫描数据段后,北亚数据恢复工程师下载获取数据复原所必须的数据库段碎片。因为 innodb 引擎数据恢复必须依赖表构造信息,mysql 的表构造信息存储于对应表名的.frm 文件内。在本复原案例中 frm 文件完整,可间接应用。下载须要复原的表对应的.frm 文件。

3. 北亚数据恢复工程师剖析零碎表。读取数据段内零碎表信息,获取须要复原的 12 个表在零碎表内的注册信息。

4. 复原被 truncate 的表。北亚数据恢复工程师在下载实现的数据段文件内提取对应于各表的数据页,解析对应表的.frm 文件,获取到该表的表构造信息。通过表构造信息获取到底层数据调配规定后,依照规定拆分数据段内的二进制数据,并对不同类型的数据进行字符展现转换(各类整形、浮点型、工夫型等),实现数据段到 sql 语句的转换。

5. 复原被 delete 数据的表,根本流程同 truncate 表的复原相似,不同点在于数据解析时须要提取被标注为“delete”的记录。

6. 数据还原。北亚数据恢复工程师依据解析出的表构造信息在数据恢复环境中的 mysql 实例内创立表,并将复原出的数据导入。

7. 数据前期解决。因为间接从底层抓取出的记录可能存在主键不惟一(引擎在存储时产生的长期记录)和记录反复(缓冲段)以及乱码(扫描数据段时呈现特征值匹配胜利但不属于该表的数据段)等状况,北亚数据恢复工程师解决提取出存在异样的记录。

数据验证:

开启远程桌面,由管理员进行数据验证,查看复原进去的数据是否正确、数据量是否失常。通过验证,truncate 表复原残缺可用,delete 记录的表复原残缺可用。

退出移动版