0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

虚拟化数据恢复—异常断电导致VMware虚拟机文件丢失的数据恢复案例

Frombyte 来源:Frombyte 作者:Frombyte 2024-09-14 17:35 次阅读

虚拟化数据恢复环境:
品牌服务器(部署VMware EXSI虚拟机)+同品牌存储(存放虚拟机文件)。

虚拟化故障:
意外断电导致服务器上某台虚拟机无法正常启动。查看虚拟机配置文件发现这台故障虚拟机除了磁盘文件以外其他配置文件全部丢失,xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还在。管理员联系VMware工程师寻求帮助。VMware工程师尝试新建一个虚拟机来解决故障,但发现ESXi存储空间不足。于是将故障虚拟机下的xxx-flat.vmdk磁盘文件删除,然后重建一个虚拟机并且分配固定大小的虚拟磁盘。新建虚拟机安装Windows Server操作系统,部署SQL Server数据库环境(管理宏桥和索菲两套应用数据库)。

虚拟化数据恢复过程:
1、在VMware vSphere Client上将挂载的存储上的VMFS卷以正常方式卸载,然后将存储上的VMFS卷通过网线的方式连接到备份服务器上。使用工具将整个VMFS卷以扇区的方式镜像到备份空间上,以确保数据安全。之后的数据分析和数据恢复操作均在备份数据上进行,避免对原始数据造成二次破坏。
2、基于备份数据分析VMFS卷的底层数据,发现异常断电导致故障虚拟机目录下的目录项被破坏。这种破坏不会影响虚拟机的重要数据,可以通过人工修复。如果是人为删除某个文件,目录项对应的数据区索引会被清掉,但是也不会影响被删除文件的实际数据。这种情况可根据删除虚拟磁盘文件中的文件系统以及虚拟磁盘中的文件类型,在VMFS卷自由空间中进行碎片匹配和合并来恢复删除的虚拟磁盘文件。但是在上述两种情况之下又新建了一台虚拟机,并且分配了虚拟磁盘。经过分析发现分配的虚拟磁盘已经全部清零(在创建虚拟磁盘的时候会选择创建磁盘的类型),也就是这个新建的虚拟机所占用的磁盘空间全部被清零。 如果新建虚拟磁盘占用了被删除虚拟机磁盘文件所释放的空间,那么此部分空间中的数据将无法恢复。
故障虚拟机的目录项区域:

wKgZombjz1WAQ_IUAAWjqkB5u2g511.png北亚企安数据恢复—虚拟机数据恢复



3、方案a:
根据VMFS卷的结构以及删除虚拟磁盘的文件系统信息,在底层的自由空间中扫描符合删除虚拟机磁盘的区域,并统计其数量和大小是否符合删除虚拟磁盘的大小。根据虚拟磁盘中文件系统的信息将这些扫描到的碎片进行排列组合,结果发现很多碎片缺失。重新扫描也没有找到这些缺失的碎片。将扫描到的碎片按照虚拟磁盘原本的顺序进行重组,对于没有找到的碎片暂且留空。使用虚拟磁盘快照程序将重组好的父盘和快照盘进行合并,生成一个新的虚拟磁盘,然后解释虚拟磁盘中的文件系统。因为数据缺失,文件系统解释过程中出现大量报错,提示某些文件损坏。
解释完的文件系统:

wKgZombjz2GAFPhRAANtMFebDm4817.png北亚企安数据恢复—虚拟机数据恢复



解析完文件系统后发现没有找到原始的数据库文件。虽然宏桥备份和索菲备份这两个目录的目录结构正常,但是将备份导入数据库中时,数据库导入程序报错。
宏桥备份和索菲备份的部分目录结构:

wKgaombjz2qAYIQUAAFLdDAEN5E917.png北亚企安数据恢复—虚拟机数据恢复wKgaombjz2qALULiAAGcCq47CIc044.png北亚企安数据恢复—虚拟机数据恢复



导入.BAK文件报错:

wKgZombjz3GAVx01AAIEmlA3LX4338.png北亚企安数据恢复—虚拟机数据恢复



4、方案b:
由于方案a并没有将原始的数据库文件恢复出来,并且好多备份文件都无法正常使用。因此采用方案b来恢复尚未恢复出来的数据库文件。
根据SQL Server数据库的结构去自由空间中找到数据库的开始位置。根据SQLServer数据库结构,数据库的第9个页会记录数据库的数据库名。根据这个特征可以核对此数据库的头部页是否是正在查找的。SQL Server数据库的每个页中都会记录数据库页编号以及文件号。根据SQL Server数据库的上述那些特征,
北亚企安数据恢复工程师编写数据库扫描程序。利用该程序去底层扫描所有符合数据库页的数据碎片,然后将扫描出来的碎片按照顺序重组成一个完整MDF文件。通过MDF校验程序检测MDF文件的完整性。在校验过程中,只有cl_system3.dbf和erp42_jck.dbf因有部分碎片没有找到外,其余数据库文件均校验成功。
校验完的MDF文件:

wKgZombjz3qAF1_tAAJhbPZsFtA065.png北亚企安数据恢复—虚拟机数据恢复



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

wKgZombjz4GARADjAAOjY8DTYXY610.png北亚企安数据恢复—虚拟机数据恢复



5、方案c:
上述两个方案实施完后并没有将所有的数据库文件恢复出来。cl_system3.dbf和erp42_jck.dbf这2个文件因缺失部分页导致无法正常使用,因此需要采用备份来恢复这两个数据库文件。在检查完这两个文件的备份后发现cl_system3.dbf的全部备份因备份机制故障没有备出来,而erp42_jck.dbf只有增量备份。

wKgZombjz4iAEhhHAAPKfJmULcM266.png北亚企安数据恢复—虚拟机数据恢复



由于erp42_jck.dbf文件中只缺失少量的页,因此可以根据缺失的页号在增量备份中查找缺失的页,然后补到erp42_jck.dbf文件中。这样可以恢复一部分丢失的数据库页。虽然补完后还是缺失部分页,但是通过北亚企安自主开发的数据库解析程序将erp42_jck.dbf文件中比较重要的几十张表成功导出,并成功导入到新建的数据库中。
6、验证数据
在本地服务器中搭建和原始环境一样的数据库环境。由用户方通过远程工具连接到验证服务器,并安装上层宏桥应用软件验证数据库是否完整。经过仔细验证,用户确认数据库基本没问题,上层应用可以正常运行,数据记录也基本没有缺失,数据库成功挂载。

wKgZombjz4-AJk6eAATPDRW-984101.png北亚企安数据恢复—虚拟机数据恢复


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据恢复
    +关注

    关注

    10

    文章

    505

    浏览量

    17183
  • 虚拟机
    +关注

    关注

    1

    文章

    888

    浏览量

    27807
  • VMware
    +关注

    关注

    1

    文章

    289

    浏览量

    21486
收藏 人收藏

    评论

    相关推荐

    数据恢复Hyper-V和VMware虚拟机备份

    对于下列常见问题的解答能够帮助你了解针对Hyper-V和VMware虚拟服务器的备份,你有可能在虚拟机备份中遇到的问题,以及虚拟机数据
    发表于 04-06 10:08 1642次阅读

    虚拟机文件丢失导致Hyper-V服务瘫痪的数据恢复案例

    虚拟机文件丢失导致Hyper-V服务瘫痪的数据恢复案例
    的头像 发表于 02-14 15:11 557次阅读
    <b class='flag-5'>虚拟机</b><b class='flag-5'>文件</b><b class='flag-5'>丢失</b><b class='flag-5'>导致</b>Hyper-V服务瘫痪的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    【服务器数据恢复】服务器断电导致虚拟机不可用的数据恢复案例

    ; 底层是通过raid卡,用4块STAT硬盘搭建的RAID10。 服务器故障: 服务器意外断电导致虚拟机磁盘丢失虚拟机不可用,SQL Server
    的头像 发表于 03-20 11:47 712次阅读
    【服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>】服务器<b class='flag-5'>断电导致</b><b class='flag-5'>虚拟机</b>不可用的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    【服务器数据恢复】ESXI虚拟机数据恢复案例

    服务器数据恢复环境: 某品牌EVA系列某型号存储设备,采用的ESXI虚拟系统,虚拟机存储的是mysql
    的头像 发表于 03-27 11:40 1936次阅读

    服务器数据恢复-虚拟机文件丢失导致Hyper-V服务瘫痪的数据恢复案例

    服务器数据恢复环境: 一台Windows Server服务器,部署Hyper-V虚拟环境,虚拟机的硬盘
    的头像 发表于 08-09 14:54 1993次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>-<b class='flag-5'>虚拟机</b>的<b class='flag-5'>文件</b><b class='flag-5'>丢失</b><b class='flag-5'>导致</b>Hyper-V服务瘫痪的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复-Xen server虚拟虚拟磁盘文件丢失数据恢复案例

    +数据盘两个虚拟机磁盘,作为Web服务器使用,存放网站代码、SQL Server数据库以及其他网站数据。 机房意外断电导致服务器中一台V
    的头像 发表于 09-07 15:34 343次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>-Xen server<b class='flag-5'>虚拟</b><b class='flag-5'>化</b><b class='flag-5'>虚拟</b>磁盘<b class='flag-5'>文件</b><b class='flag-5'>丢失</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复-异常断电导致服务器故障的数据恢复案例

    服务器数据恢复环境: dell某型号服务器中有一组通过raid卡组建的raid10,该raid阵列中一共有4块磁盘。上层部署XenServer虚拟平台,作为网站服务器使用。 服务
    的头像 发表于 02-28 15:15 710次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>-<b class='flag-5'>异常</b><b class='flag-5'>断电导致</b>服务器故障的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复VMware虚拟机无法启动的数据恢复案例

    服务器数据恢复环境: 某品牌EVA某型号存储中部署VMware ESXi虚拟平台,数据盘(精
    的头像 发表于 05-06 13:26 295次阅读

    服务器数据恢复—EVA存储异常断电后出现故障的数据恢复方案

    数据库。 服务器存储故障&检测: 存储异常断电重启后,存储中一台虚拟机无法启动。工作人员推测故障原因是异常
    的头像 发表于 05-28 10:29 245次阅读

    服务器数据恢复异常断电导致VMware虚拟机无法启动的数据恢复案例

    服务器数据恢复环境: 某大厂PS4000服务器,服务器上部署VMware ESXi虚拟平台。 服务器故障: 机房
    的头像 发表于 05-29 11:29 744次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>异常</b><b class='flag-5'>断电导致</b><b class='flag-5'>VMware</b><b class='flag-5'>虚拟机</b>无法启动的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复异常断电导致存储瘫痪的数据恢复案例

    服务器存储数据恢复环境: 一台存储中有一组由12块SAS硬盘组建的RAID6磁盘阵列,划分为一个卷,分配给几台Vmware ESXI主机做共享存储。该卷中存放了大量Windows虚拟机
    的头像 发表于 06-25 13:41 196次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>异常</b><b class='flag-5'>断电导致</b>存储瘫痪的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复异常断电导致虚拟机配置文件丢失数据恢复案例

    服务器数据恢复环境: 某品牌X3850系列服务器(用于VMware虚拟主机)+某品牌RD220i系列存储(用于存放虚拟机
    的头像 发表于 06-28 16:34 221次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>异常</b><b class='flag-5'>断电导致</b><b class='flag-5'>虚拟机</b>配置<b class='flag-5'>文件</b><b class='flag-5'>丢失</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    虚拟数据恢复—XenServer虚拟平台数据恢复案例

    ,作为Web服务器使用,运行SQL Server数据库。共有2个虚拟磁盘:数据盘+系统盘。 虚拟故障: 机房
    的头像 发表于 07-30 13:18 131次阅读
    <b class='flag-5'>虚拟</b><b class='flag-5'>化</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—XenServer<b class='flag-5'>虚拟</b><b class='flag-5'>化</b>平台<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    虚拟数据恢复—EXSI虚拟机误还原快照如何恢复数据

    虚拟技术原理是将硬件虚拟供不同的虚拟机使用,一台物理机上可以有多台虚拟机。人为误操作或者物理
    的头像 发表于 09-09 11:56 147次阅读
    <b class='flag-5'>虚拟</b><b class='flag-5'>化</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—EXSI<b class='flag-5'>虚拟机</b>误还原快照如何<b class='flag-5'>恢复数据</b>?

    服务器数据恢复—意外断电导致虚拟机虚拟磁盘损坏的数据恢复案例

    使用。 服务器故障: 因机房异常断电导致服务器中一台VPS(Xen Server虚拟机)不可用,虚拟磁盘文件
    的头像 发表于 09-10 17:25 124次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—意外<b class='flag-5'>断电导致</b><b class='flag-5'>虚拟机</b><b class='flag-5'>虚拟</b>磁盘损坏的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例