虛擬化數據恢復環境:
某品牌服務器(部署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卷自由空間中進行碎片匹配和合并來恢復刪除的虛擬磁盤文件。但是在上述兩種情況之下又新建了一臺虛擬機,并且分配了虛擬磁盤。經過分析發現分配的虛擬磁盤已經全部清零(在創建虛擬磁盤的時候會選擇創建磁盤的類型),也就是這個新建的虛擬機所占用的磁盤空間全部被清零。 如果新建虛擬磁盤占用了被刪除虛擬機磁盤文件所釋放的空間,那么此部分空間中的數據將無法恢復。
故障虛擬機的目錄項區域:
3、方案a:
根據VMFS卷的結構以及刪除虛擬磁盤的文件系統信息,在底層的自由空間中掃描符合刪除虛擬機磁盤的區域,并統計其數量和大小是否符合刪除虛擬磁盤的大小。根據虛擬磁盤中文件系統的信息將這些掃描到的碎片進行排列組合,結果發現很多碎片缺失。重新掃描也沒有找到這些缺失的碎片。將掃描到的碎片按照虛擬磁盤原本的順序進行重組,對于沒有找到的碎片暫且留空。使用虛擬磁盤快照程序將重組好的父盤和快照盤進行合并,生成一個新的虛擬磁盤,然后解釋虛擬磁盤中的文件系統。因為數據缺失,文件系統解釋過程中出現大量報錯,提示某些文件損壞。
解釋完的文件系統:
解析完文件系統后發現沒有找到原始的數據庫文件。雖然宏橋備份和索菲備份這兩個目錄的目錄結構正常,但是將備份導入數據庫中時,數據庫導入程序報錯。
宏橋備份和索菲備份的部分目錄結構:
導入.BAK文件報錯:
4、方案b:
由于方案a并沒有將原始的數據庫文件恢復出來,并且好多備份文件都無法正常使用。因此采用方案b來恢復尚未恢復出來的數據庫文件。
根據SQL Server數據庫的結構去自由空間中找到數據庫的開始位置。根據SQLServer數據庫結構,數據庫的第9個頁會記錄數據庫的數據庫名。根據這個特征可以核對此數據庫的頭部頁是否是正在查找的。SQL Server數據庫的每個頁中都會記錄數據庫頁編號以及文件號。根據SQL Server數據庫的上述那些特征,
北亞企安數據恢復工程師編寫數據庫掃描程序。利用該程序去底層掃描所有符合數據庫頁的數據碎片,然后將掃描出來的碎片按照順序重組成一個完整MDF文件。通過MDF校驗程序檢測MDF文件的完整性。在校驗過程中,只有cl_system3.dbf和erp42_jck.dbf因有部分碎片沒有找到外,其余數據庫文件均校驗成功。
校驗完的MDF文件:
cl_system3.dbf文件中某個碎片丟失的區域:
5、方案c:
上述兩個方案實施完后并沒有將所有的數據庫文件恢復出來。cl_system3.dbf和erp42_jck.dbf這2個文件因缺失部分頁導致無法正常使用,因此需要采用備份來恢復這兩個數據庫文件。在檢查完這兩個文件的備份后發現cl_system3.dbf的全部備份因備份機制故障沒有備出來,而erp42_jck.dbf只有增量備份。
由于erp42_jck.dbf文件中只缺失少量的頁,因此可以根據缺失的頁號在增量備份中查找缺失的頁,然后補到erp42_jck.dbf文件中。這樣可以恢復一部分丟失的數據庫頁。雖然補完后還是缺失部分頁,但是通過北亞企安自主開發的數據庫解析程序將erp42_jck.dbf文件中比較重要的幾十張表成功導出,并成功導入到新建的數據庫中。
6、驗證數據
在本地服務器中搭建和原始環境一樣的數據庫環境。由用戶方通過遠程工具連接到驗證服務器,并安裝上層宏橋應用軟件驗證數據庫是否完整。經過仔細驗證,用戶確認數據庫基本沒問題,上層應用可以正常運行,數據記錄也基本沒有缺失,數據庫成功掛載。
-
數據恢復
+關注
關注
10文章
552瀏覽量
17395 -
虛擬機
+關注
關注
1文章
908瀏覽量
28109 -
VMware
+關注
關注
1文章
294瀏覽量
21584
發布評論請先 登錄
相關推薦
評論