服务器数据恢复—云服务器上mysql数据库表被truncate的数据恢复

yumo6664个月前 (03-27)技术文章27

云服务器特点:

1、无需硬件设备,只需按照配置支付相应的费用,云服务器服务商不仅提供云服务器环境,同时还提供技术咨询服务。

2、云服务器可以更充分的利用资源,无需考虑老旧设备的淘汰和折旧,节约购买新设备的成本。

3、云服务器服务商有专业技术人员对服务器进行维护,节约设备运行维护成本和搭建成本等,可以让用户方将更多资源投入到核心业务中。

云服务器数据恢复案例:

云服务器数据恢复环境及故障:

某ECS网站服务器,linux操作系统+mysql数据库。mysql数据库采用innodb作为默认存储引擎。

在执行数据库版本更新测试时,操作人员误误将在本来应该在测试库执行的sql脚本在生产库上执行,导致生产库上部分表被truncate,还有部分表中少量数据被delete。

云服务器数据恢复过程:

1、由于ECS内有其他业务在运行。为保证被truncate表底层数据不被破坏,在进行数据恢复之前先对mysql的data目录所在分区进行备份。



2、由于需要恢复的表内无大字段类型值,这些表都是myisam引擎表。扫描数据段并下载所必需的数据库段碎片。由于恢复innodb引擎表的数据必须依赖表结构信息,mysql的表结构信息存储于对应表名的.frm文件内。本案例中.frm文件完好,可直接使用。



3、读取数据段内系统表信息,获取需要恢复的表在系统表内的注册信息。

4、在下载的数据段文件内提取对应于各表的数据页,通过解析对应表的.frm文件获取到该表的表结构信息。通过表结构信息获取到底层数据分配规则。北亚企安数据恢复工程师按照获取到的规则拆分数据段内二进制数据,并对不同类型进行字符展示转换(各类整型、浮点型、时间型等),完成数据段到sql语句的转换。

5、恢复被delete数据的表,流程同truncate表的恢复,不同点在于解析数据时需要提取被标注为“delete”的记录。

6、根据解析出的表结构信息在恢复环境中的mysql实例内创建表,并将恢复出的数据导入。

7、由于直接从底层抓取出的记录可能存在主键不唯一(引擎在存储时产生的临时记录)和记录重复(缓冲段)以及乱码(扫描数据段时出现特征值匹配成功但不属于该表的数据段)等情况,提取出的记录可能存在异常,需要人工处理。北亚数据恢复工程师对数据进行处理。

8、用户方开启远程对数据进行验证。经过用户方的验证,truncate表和delete记录的表完整恢复。


相关文章

一种 SQL Server 数据库恢复方案:解密、恢复并导出 MDF/NDF/BAK文件

天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据恢复、数据备份、数据取证、数据迁移解决方案,并针对企业面临的数据安全风险,提供专业的相关数据安全培训。天津鸿萌科贸发展...

遭遇删库跑路不要慌,这几个数据恢复方式可以参考一下。

23号19点,微盟遭遇核心运维人员删库跑路事件。造成微盟服务器故障,大积服务集群群无法响应,生产环境及数据遭受微盟研发中心运维部核心运维人员贺某的严重破坏。我们不知道贺某经历了什么,冒着重大信息犯罪干...

Oracle数据恢复—Oracle数据删了?别慌,Oracle数据恢复有方法

相信有很多oracle数据库用户都遇到过在操作Oracle数据库时误删除某些重要数据的情况,这个时候如果数据库没有备份且数据十分重要的,怎么才能恢复误删除的数据呢?北亚企安数据恢复工程师下面简单介绍几...

数据库数据恢复—SqlServer数据库表结构损坏的数据恢复案例

SQL Server数据库故障&分析&恢复方案:SQL Server数据库的数据无法被读取。经过数据库数据恢复工程师的初步检测,发现SQL Server数据库文件无法被读取的原因是底层File Rec...

能否恢复误删除的数据#数据恢复

能否恢复误删除的文件?机械硬盘上的文件被删除后,如果没有往这个分区存入新数据,还是有很大的恢复机会恢复出来的。如果被删除的文件和目录是在c盘,建议您把电脑赶紧关机,然后拆硬盘挂到别的电脑上来恢复。因为...

如何在 iPhone 恢复出厂设置后恢复数据

如果您在 iPhone 上执行了出厂重置,您会发现它已删除所有旧数据。这对于清理杂乱和提高设备性能非常有用,但如果您忘记保存重要文件,那就是个坏消息。恢复出厂设置后可以恢复数据吗?是的!幸运的是,只要...