【虚拟机数据恢复】VMware虚拟机文件被误删除的数据恢复案例

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 虚拟机数据恢复环境:某品牌R710服务器+MD3200存储,上层是ESXI虚拟机和虚拟机文件,虚拟机中存放有SQL Server数据库。虚拟机故障:机房非正常断电导致虚拟机无法启动。服务器管理员检查后发现虚拟机配置文件丢失,所幸xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还在。服务器管理员在尝试恢复虚拟机的过程中,将原虚拟机内的xxx-flat.vmdk删除后新建了一个虚拟机,并分配了精简模式的虚拟机磁盘和快照数据盘,但原虚拟机内的数据并没有恢复。

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

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

虚拟机数据恢复过程:
1、将挂载在VMware vSphere Client上的卷卸载后备份,后续的数据分析和数据恢复操作都基于备份数据进行,避免对原始数据造成二次破坏。
2、基于备份数据进行检测和分析。经过检测和分析发现虚拟机目录项由于异常断电被破坏,服务器管理员删除的xxx-flat.vmdk文件导致文件的数据区索引被清除,而重建虚拟机导致分配给新建虚拟机的磁盘底层数据被清零。前两种情况可以通过人工修复恢复数据,但新建虚拟机的操作直接导致磁盘底层数据清零。如果新建虚拟机的磁盘空间占用了原虚拟机的释放空间则会导致这部分数据无法恢复,具体情况需要进一步检测。
虚拟机目录项:
01副本.jpg

3、再次基于备份分析底层数据,在自由空间中排查被删除的虚拟机磁盘区域,在扫描这部分区域过程中发现大量碎片。尝试拼接和重组这些碎片,发现仍然缺失部分碎片文件,只能暂时将丢失的文件碎片位置留空。
4、利用虚拟磁盘快照程序将重组好的父盘和快照盘合并,生成一个新的虚拟磁盘。尝试解释虚拟磁盘中的文件系统,数据缺失导致在文件系统的解释过程中出现报错,提示某些文件损坏。
解释文件系统:
02副本.jpg

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

导入.BAK文件报错:
04副本.jpg

6、根据SQL Server数据库的结构去自由空间中查找数据库的开始位置。根据SQL Server数据库库名通常出现的位置在底层扫描数据库页的碎片,然后重组mdf文件。
在本案例中除了cl_system3.dbf和erp42_jck.dbf中有部分碎片没有找到,其余数据库文件均校验成功。
校验完的MDF文件:
05副本.jpg

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

7、详细检查备份文件发现上述丢失的两个文件也不存在,只有部分增量备份文件。erp42_jck.dbf文件中只缺失少量的页,可以根据缺失的页号在增量备份中查找,再将找到的页补到erp42_jck.dbf文件中,通过这种方式恢复一部分丢失的数据库页。补完后发现还是有部分页缺失,无法正常使用。
8、使用北亚企安自主开发的数据库解析程序将erp42_jck.dbf文件中比较重要的几十张表成功导出,并成功导入到新建的数据库中,恢复出缺失的文件。
9、将恢复出来的数据导入到重新搭载好的环境中,由用户方验证数据库的完整性。经过仔细验证,用户方确认所有恢复出来的数据完整、数据库成功挂载、上层应用运行正常,用户方认可本次数据恢复结果。本次虚拟机数据恢复工作完成。

相关文章
|
1月前
|
存储 算法 数据挖掘
NetApp数据恢复—NetApp存储中虚拟机的数据恢复案例
NetApp存储数据恢复环境: 北京某公司的一台NetApp某型号存储,通过96块磁盘组建了两组存储池,这2组存储池互为镜像。存储池内划分卷并映射到ESXI作为数据存储使用,卷内有几百台虚拟机。 NetApp存储故障: 操作过程中由于未知原因导致卷丢失,卷内虚拟机无法访问。管理员对该NetApp存储进行检查并试图恢复数据但是没有成功,于是联系我们数据恢复中心恢复数据。
NetApp数据恢复—NetApp存储中虚拟机的数据恢复案例
|
1月前
|
存储 缓存 固态存储
VSAN存储故障导致虚拟机无法访问的VSAN数据恢复案例
VSAN数据恢复环境: 由四台某品牌服务器组建的VSAN集群,每台节点服务器上有两个磁盘组。每个磁盘组中有1块SSD硬盘+5块SAS硬盘,SSD作为闪存,SAS硬盘作为容量盘。 VSAN故障: VSAN集群中一个节点服务器上其中一个磁盘组中的容量盘出现故障离线,VSAN开始数据的重构迁移,数据迁移还没有完成的时候机房停电导致数据迁移中断。来电后启动所有设备后,管理员发现另一个磁盘组中的两块容量盘出现故障离线,VSAN数据存储出现问题。VSAN管理控制台可以登录,但是所有虚拟机都无法访问。
|
1月前
|
算法 虚拟化 C++
VMware虚拟机无法自适应和拖拽复制粘贴和共享目录问题
VMware虚拟机无法自适应和拖拽复制粘贴和共享目录问题
96 0
|
4天前
|
程序员 Linux KVM
【qemu虚拟化】将img镜像文件转换为VMware虚拟机
QEMU是一个开源的硬件虚拟化器,能在多种平台如x86、ARM、PowerPC上运行,支持虚拟化不同体系结构的操作系统。它具有硬件仿真、虚拟化支持、磁盘和网络仿真、快照回滚及可扩展性等特点。要使用QEMU,首先从[官网](https://www.qemu.org/download/)下载,然后通过命令行运行进行转换。转换后的vMDK文件可在VMware中导入,创建新的虚拟机进行使用。
44 1
【qemu虚拟化】将img镜像文件转换为VMware虚拟机
|
10天前
|
Linux KVM 数据库
虚拟机数据恢复—误删除KVM虚拟机的数据恢复案例
虚拟化数据恢复环境&故障: KVM是Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux2.6.20版本之后集成在Linux的各个主要发行版本中。KVM使用Linux自身的调度器进行管理。 本案例中的服务器操作系统为Linux,文件系统为EXT4。操作系统上的部署的几台KVM虚拟机被删除,每台KVM虚拟机包含一个qcow2格式的磁盘文件和一个raw格式的磁盘文件,用户需要恢复的数据是raw格式的磁盘文件。这几台被误删除的虚拟机存放的是数据库,程序代码等数据。
|
25天前
【嵌入式】虚拟机未能将管道连接到虚拟机: 系统找不到指定的文件
【嵌入式】虚拟机未能将管道连接到虚拟机: 系统找不到指定的文件
|
1月前
|
Linux 虚拟化 数据安全/隐私保护
使用VMware安装linux虚拟机
使用VMware安装linux虚拟机
使用VMware安装linux虚拟机
|
2月前
|
虚拟化
vmware克隆虚拟机后没有ip地址的问题
解决vmware克隆虚拟机后没有内网ip的问题
|
Linux 虚拟化 数据安全/隐私保护
VMware使用 - 虚拟机克隆
如果已经安装了一台Linux操作系统,没有必要重新安装,只需要克隆就可以了,有两种方式。
26 0