【虚拟机数据恢复】异常断电导致虚拟机无法启动的数据恢复案例

虚拟机数据恢复环境:

某品牌R710服务器+MD3200存储,上层是ESXI虚拟机和虚拟机文件,虚拟机中存放有SQL Server数据库。

虚拟机故障:

机房非正常断电导致虚拟机无法启动。服务器管理员检查后发现虚拟机配置文件丢失,所幸xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还在。服务器管理员在尝试恢复虚拟机的过程中,将原虚拟机内的xxx-flat.vmdk删除后新建了一个虚拟机,并分配了精简模式的虚拟机磁盘和快照数据盘,但原虚拟机内的数据并没有恢复。

虚拟机数据恢复过程:

1、将挂载在VMware vSphere Client上的卷卸载后备份,后续的数据分析和数据恢复操作都基于备份数据进行,避免对原始数据造成二次破坏。

2、基于备份数据进行检测和分析。经过检测和分析发现虚拟机目录项由于异常断电被破坏,服务器管理员删除的xxx-flat.vmdk文件导致文件的数据区索引被清除,而重建虚拟机导致分配给新建虚拟机的磁盘底层数据被清零。前两种情况可以通过人工修复恢复数据,但新建虚拟机的操作直接导致磁盘底层数据清零。如果新建虚拟机的磁盘空间占用了原虚拟机的释放空间则会导致这部分数据无法恢复,具体情况需要进一步检测。

虚拟机目录项:

3、再次基于备份分析底层数据,在自由空间中排查被删除的虚拟机磁盘区域,在扫描这部分区域过程中发现大量碎片。尝试拼接和重组这些碎片,发现仍然缺失部分碎片文件,只能暂时将丢失的文件碎片位置留空。

4、利用虚拟磁盘快照程序将重组好的父盘和快照盘合并,生成一个新的虚拟磁盘。尝试解释虚拟磁盘中的文件系统,数据缺失导致在文件系统的解释过程中出现报错,提示某些文件损坏。

解释文件系统:

5、文件系统解析完后,没有找到原始的数据库文件,但是备份的两个目录的目录结构正常。尝试将备份导入到数据库中时提示报错。

备份目录结构:

导入.BAK文件报错:

6、根据SQL Server数据库的结构去自由空间中查找数据库的开始位置。根据SQL Server数据库库名通常出现的位置在底层扫描数据库页的碎片,然后重组mdf文件。

在本案例中除了cl_system3.dbf和erp42_jck.dbf中有部分碎片没有找到,其余数据库文件均校验成功。

校验完的MDF文件:

cl_system3.dbf文件中某个碎片丢失的区域:

7、详细检查备份文件发现上述丢失的两个文件也不存在,只有部分增量备份文件。erp42_jck.dbf文件中只缺失少量的页,可以根据缺失的页号在增量备份中查找,再将找到的页补到erp42_jck.dbf文件中,通过这种方式恢复一部分丢失的数据库页。补完后发现还是有部分页缺失,无法正常使用。

8、使用北亚企安自主开发的数据库解析程序将erp42_jck.dbf文件中比较重要的几十张表成功导出,并成功导入到新建的数据库中,恢复出缺失的文件。

9、将恢复出来的数据导入到重新搭载好的环境中,由用户方验证数据库的完整性。经过仔细验证,用户方确认所有恢复出来的数据完整、数据库成功挂载、上层应用运行正常,用户方认可本次数据恢复结果。本次虚拟机数据恢复工作完成。

相关推荐
_大峰_2 天前
索尼 A7M4 误删视频恢复实战:基于原始卡镜像重建 MP4 数据
ffmpeg·数据恢复·音视频·mp4·exfat
CHS_Lab3 天前
苹果(Apple)HFS+格式化恢复方法
数据恢复·视频恢复·苹果·格式化恢复·hfs+·存储格式化恢复
软擎3 天前
轻虾数据恢复科普:硬盘咔哒响、电脑认不出盘,还能自己救数据吗?
电脑·数据恢复
北亚数据恢复4 天前
【服务器数据恢复】RAID5阵列硬盘磁头物理故障修复和数据恢复案例
数据恢复·服务器数据恢复·北亚数据恢复·raid数据恢复
软擎5 天前
轻虾数据恢复科普:采访录音、会议记录误删了又不能重录,手机和录音笔里的录音怎么找回?
数据恢复
荣合技术服务6 天前
服务器数据恢复服务商——荣合科算技术服务
运维·服务器·数据恢复·荣合科算
荣合技术服务8 天前
国庆假期紧急救援:荣合科算成功恢复山西介休某医院影像数据
数据恢复·荣合科算
Tisfy8 天前
两台旧电脑修复 —— 绕过WinXP密码登录、备份和恢复Win7数据、安装Win10
windows·数据恢复·系统重装
东方护航数据恢复(深圳)8 天前
勒索病毒加密数据库怎么办?深圳 0 赎金解密恢复实录【东方护航数据恢复深圳店】
数据库·数据恢复·服务器数据恢复·勒索病毒·数据镜像
软擎9 天前
轻虾数据恢复软件新手指南:第一次数据恢复,从零开始五步走
数据恢复