服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境:
某品牌X3850系列服務(wù)器(用于VMware虛擬主機(jī))+某品牌RD220i系列存儲(chǔ)(用于存放虛擬機(jī)文件)+VMware ESXi虛擬化操作系統(tǒng)。
虛擬機(jī)操作系統(tǒng):Windows Server,虛擬機(jī)上運(yùn)行SQL Server數(shù)據(jù)庫(kù)(宏橋和索菲兩套應(yīng)用的數(shù)據(jù)庫(kù))。
虛擬磁盤(pán):數(shù)據(jù)盤(pán)(精簡(jiǎn)模式)+ 快照數(shù)據(jù)盤(pán)。
服務(wù)器故障:
意外斷電導(dǎo)致某臺(tái)虛擬機(jī)無(wú)法正常啟動(dòng)。管理員檢查后發(fā)現(xiàn)此虛擬機(jī)除了磁盤(pán)文件以外其他配置文件全部丟失,xxx-flat.vmdk磁盤(pán)文件和xxx-000001-delta.vmdk快照文件還在。管理員聯(lián)系VMware工程師尋求幫助。VMware工程師嘗試新建一個(gè)虛擬機(jī),但發(fā)現(xiàn)ESXi存儲(chǔ)空間不足,于是將故障虛擬機(jī)下的xxx-flat.vmdk磁盤(pán)文件刪除了。VMware工程師重建了一個(gè)虛擬機(jī),并且分配了固定大小的虛擬磁盤(pán)。
服務(wù)器數(shù)據(jù)恢復(fù)過(guò)程:
1、在VMware vSphere Client上將掛載的RD220i存儲(chǔ)中VMFS卷以正常方式卸載,然后將RD220i存儲(chǔ)上的VMFS卷通過(guò)網(wǎng)線連接到北亞企安備份服務(wù)器上。使用專業(yè)工具將VMFS卷以扇區(qū)的方式鏡像到已準(zhǔn)備好的備份空間上。后續(xù)數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作均在鏡像文件上進(jìn)行,避免對(duì)原始數(shù)據(jù)造成二次破壞。
2、故障分析:
a、基于鏡像文件分析VMFS卷的底層數(shù)據(jù),發(fā)現(xiàn)ESXi主機(jī)的非正常斷電導(dǎo)致故障虛擬機(jī)目錄下的目錄項(xiàng)被破壞,這種問(wèn)題可以通過(guò)人工修復(fù)。
b、人為刪除某個(gè)文件,則目錄項(xiàng)對(duì)應(yīng)的數(shù)據(jù)區(qū)索引會(huì)被清掉,不會(huì)影響文件的實(shí)際數(shù)據(jù),這種情況可根據(jù)刪除虛擬磁盤(pán)文件中的文件系統(tǒng)以及文件類型,通過(guò)在VMFS卷自由空間中匹配和合并碎片的方法來(lái)恢復(fù)刪除的虛擬磁盤(pán)文件。
但是本案例中的故障情況是在上述的兩種情況下又新建了一臺(tái)虛擬機(jī)并且分配了虛擬磁盤(pán)。經(jīng)過(guò)分析發(fā)現(xiàn)分配的虛擬磁盤(pán)已經(jīng)全部清零(在創(chuàng)建虛擬磁盤(pán)的時(shí)候會(huì)選擇創(chuàng)建磁盤(pán)的類型),也就是說(shuō)這個(gè)新建的虛擬機(jī)所占用的磁盤(pán)空間全部被清零。 如果新虛擬磁盤(pán)占用了刪除虛擬機(jī)磁盤(pán)文件所釋放的空間,那么此部分空間的數(shù)據(jù)將無(wú)法恢復(fù)。
故障虛擬機(jī)的目錄項(xiàng)區(qū)域:
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
3、經(jīng)過(guò)北亞企安數(shù)據(jù)恢復(fù)工程師團(tuán)隊(duì)會(huì)診后,確定以下三套數(shù)據(jù)恢復(fù)方案。
a、方案一:恢復(fù)刪除的VMDK文件。
根據(jù)刪除虛擬磁盤(pán)文件中的文件系統(tǒng)以及文件類型在VMFS卷的自由空間中匹配和合并碎片,恢復(fù)刪除的虛擬磁盤(pán)文件。使用快照合并程序?qū)⒖煺瘴募突謴?fù)的虛擬磁盤(pán)文件合并成一個(gè)完整的虛擬磁盤(pán)文件,然后通過(guò)文件系統(tǒng)解釋工具解釋虛擬磁盤(pán)文件中的所有文件。
b、方案二:恢復(fù)MSSQL數(shù)據(jù)庫(kù)文件。
如果方案一效果不理想,可根據(jù)SQL Server數(shù)據(jù)庫(kù)文件結(jié)構(gòu),對(duì)VMFS卷自由空間中符合SQL Server頁(yè)結(jié)構(gòu)的數(shù)據(jù)區(qū)域進(jìn)行統(tǒng)計(jì)、分析和聚合,生成一個(gè)可以正常使用的.MDF格式的文件。
c、方案三:恢復(fù)MSSQL數(shù)據(jù)庫(kù)備份文件。
如果上述兩種方案執(zhí)行后還有一些數(shù)據(jù)庫(kù)文件無(wú)法恢復(fù)的話,可以通過(guò)備份文件(故障虛擬機(jī)中的數(shù)據(jù)庫(kù)每天做一次增量備份,15天做一次全部備份。)恢復(fù)數(shù)據(jù)庫(kù)。根據(jù)備份文件.bak的結(jié)構(gòu),對(duì)VMFS卷自由空間中符合SQL Server備份文件結(jié)構(gòu)的數(shù)據(jù)區(qū)域進(jìn)行統(tǒng)計(jì)、分析和聚合,生成一個(gè)可以正常導(dǎo)入到SQL Server數(shù)據(jù)庫(kù)中.BAK格式的文件。
4、執(zhí)行方案一?;阽R像文件分析底層,根據(jù)VMFS卷的結(jié)構(gòu)以及刪除虛擬磁盤(pán)的文件系統(tǒng)信息,在底層的自由空間中掃描符合刪除虛擬機(jī)磁盤(pán)的區(qū)域,統(tǒng)計(jì)其數(shù)量和大小是否符合刪除虛擬磁盤(pán)的大小。根據(jù)虛擬磁盤(pán)中的文件系統(tǒng)信息將這些掃描到的碎片進(jìn)行排列組合,結(jié)果發(fā)現(xiàn)中間有好多碎片缺失,重新掃描還是沒(méi)有找到這些缺失的碎片。將掃描到的碎片按照虛擬磁盤(pán)原本順序重組,暫且留空沒(méi)有找到的碎片。使用虛擬磁盤(pán)快照程序合并重組好的父盤(pán)和快照盤(pán),生成一個(gè)新的虛擬磁盤(pán)。解釋虛擬磁盤(pán)中的文件系統(tǒng),因?yàn)楹芏鄶?shù)據(jù)缺失,文件系統(tǒng)解釋過(guò)程中出現(xiàn)很多報(bào)錯(cuò),提示某些文件損壞。
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
文件系統(tǒng)解析完成后沒(méi)有找到原始數(shù)據(jù)庫(kù)文件,而宏橋備份和索菲備份這兩個(gè)目錄的目錄結(jié)構(gòu)正常,但是嘗試將備份導(dǎo)入數(shù)據(jù)庫(kù)中時(shí),數(shù)據(jù)庫(kù)導(dǎo)入程序提示報(bào)錯(cuò)。
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
導(dǎo)入.BAK文件報(bào)錯(cuò)信息:
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
2、執(zhí)行方案二。由于方案一沒(méi)有將數(shù)據(jù)庫(kù)文件恢復(fù)出來(lái),且其中很多備份文件都無(wú)法正常使用,因此采用第二套方案來(lái)恢復(fù)尚未恢復(fù)的數(shù)據(jù)庫(kù)文件。
根據(jù)SQL Server數(shù)據(jù)庫(kù)的結(jié)構(gòu)去自由空間中找到數(shù)據(jù)庫(kù)的開(kāi)始位置。在SQL Server數(shù)據(jù)庫(kù)的結(jié)構(gòu)中,數(shù)據(jù)庫(kù)的第9個(gè)頁(yè)會(huì)記錄本數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)名,根據(jù)這個(gè)特征核對(duì)此數(shù)據(jù)庫(kù)的頭部頁(yè)是否是正在查找的。數(shù)據(jù)庫(kù)的每個(gè)頁(yè)中都會(huì)記錄數(shù)據(jù)庫(kù)頁(yè)編號(hào)以及文件號(hào),北亞企安數(shù)據(jù)恢復(fù)工程師根據(jù)這些特征編寫(xiě)數(shù)據(jù)庫(kù)掃描程序去底層掃描所有符合數(shù)據(jù)庫(kù)頁(yè)的數(shù)據(jù)碎片。接著將掃描出來(lái)的碎片按順序重組成一個(gè)完整MDF文件。通過(guò)MDF校驗(yàn)程序檢測(cè)MDF文件的完整性。經(jīng)過(guò)校驗(yàn),只有cl_system3.dbf和erp42_jck.dbf因有部分碎片缺失沒(méi)有找到外,其余數(shù)據(jù)庫(kù)文件均校驗(yàn)成功。
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
cl_system3.dbf和erp42_jck.dbf因底層有很多碎片缺失找不到(初步懷疑被覆蓋),因此校驗(yàn)不通過(guò)。
cl_system3.dbf文件中某個(gè)碎片丟失的區(qū)域:
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
3、執(zhí)行方案三。
由于前兩個(gè)方案執(zhí)行后并沒(méi)有將所有的數(shù)據(jù)庫(kù)文件全部恢復(fù)出來(lái)。cl_system3.dbf和erp42_jck.dbf這2個(gè)文件因缺失部分頁(yè)導(dǎo)致其無(wú)法正常使用,因此需要采用備份來(lái)恢復(fù)這兩個(gè)數(shù)據(jù)庫(kù)文件,但是檢查完這兩個(gè)文件的備份后發(fā)現(xiàn)cl_system3.dbf因備份機(jī)制故障沒(méi)有備份出來(lái),erp42_jck.dbf沒(méi)有全部備份,只有增量備份。
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
由于erp42_jck.dbf文件中只缺失少量的頁(yè),因此可以根據(jù)缺失的頁(yè)號(hào)在增量備份中查找,再將找到的頁(yè)補(bǔ)到erp42_jck.dbf文件中,通過(guò)這種方式可以恢復(fù)一部分丟失的數(shù)據(jù)庫(kù)頁(yè)。結(jié)果補(bǔ)完后還是缺失部分頁(yè),無(wú)法正常使用。通過(guò)北亞企安自主開(kāi)發(fā)的數(shù)據(jù)庫(kù)解析程序?qū)rp42_jck.dbf文件中比較重要的幾十張表導(dǎo)出并導(dǎo)入到新建的數(shù)據(jù)庫(kù)中。
驗(yàn)證數(shù)據(jù):
在本地服務(wù)器中搭建和原始環(huán)境一樣的數(shù)據(jù)庫(kù)環(huán)境并安裝上層宏橋應(yīng)用軟件。由用戶方工程驗(yàn)證數(shù)據(jù)庫(kù)是否完整,經(jīng)過(guò)仔細(xì)驗(yàn)證,上層應(yīng)用可以正常運(yùn)行,數(shù)據(jù)記錄基本沒(méi)有缺失,數(shù)據(jù)庫(kù)成功掛載。用戶方認(rèn)可本次數(shù)據(jù)恢復(fù)結(jié)果。
北亞企安數(shù)據(jù)恢復(fù)——虛擬化數(shù)據(jù)恢復(fù)
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9795瀏覽量
88000 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
650瀏覽量
18156 -
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3927瀏覽量
66241
發(fā)布評(píng)論請(qǐng)先 登錄
虛擬化數(shù)據(jù)恢復(fù)—XenServer虛擬化平臺(tái)上VPS不可用的數(shù)據(jù)恢復(fù)案例

分布式存儲(chǔ)數(shù)據(jù)恢復(fù)—虛擬機(jī)上hbase和hive數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列中硬盤(pán)壞道導(dǎo)致陣列崩潰的數(shù)據(jù)恢復(fù)案例

虛擬化數(shù)據(jù)恢復(fù)—VMware虛擬化環(huán)境下重裝系統(tǒng)導(dǎo)致服務(wù)器數(shù)據(jù)丟失的數(shù)據(jù)恢復(fù)

vSAN數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致虛擬機(jī)無(wú)法啟動(dòng)的vSAN數(shù)據(jù)恢復(fù)案例

虛擬化數(shù)據(jù)恢復(fù)—XenServer虛擬機(jī)數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致linux系統(tǒng)無(wú)法啟動(dòng)的數(shù)據(jù)恢復(fù)案例
虛擬化數(shù)據(jù)恢復(fù)——Hyper-V虛擬機(jī)數(shù)據(jù)恢復(fù)案例

虛擬機(jī)數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致XenServer虛擬機(jī)不可用的數(shù)據(jù)恢復(fù)案例

虛擬化數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致VMware虛擬機(jī)文件丟失的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—意外斷電導(dǎo)致虛擬機(jī)虛擬磁盤(pán)損壞的數(shù)據(jù)恢復(fù)案例

假如服務(wù)器的數(shù)據(jù)丟失,如何快速恢復(fù)丟失的數(shù)據(jù)?
虛擬機(jī)數(shù)據(jù)恢復(fù)—KVM虛擬機(jī)被誤刪除的數(shù)據(jù)恢復(fù)案例

虛擬化數(shù)據(jù)恢復(fù)—Hyper-V服務(wù)癱瘓導(dǎo)致虛擬機(jī)無(wú)法使用的數(shù)據(jù)恢復(fù)

虛擬化數(shù)據(jù)恢復(fù)—XenServer虛擬化平臺(tái)數(shù)據(jù)恢復(fù)案例

評(píng)論