服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境:
一臺(tái)某品牌服務(wù)器通過一張同品牌某型號(hào)RAID卡將4塊STAT硬盤組建為一組RAID10陣列。上層部署Xen Server虛擬化平臺(tái),虛擬機(jī)上安裝的是Windows Server操作系統(tǒng),包括系統(tǒng)盤 +數(shù)據(jù)盤兩個(gè)虛擬機(jī)磁盤,作為Web服務(wù)器使用,存放網(wǎng)站代碼、SQL Server數(shù)據(jù)庫以及其他網(wǎng)站數(shù)據(jù)。
服務(wù)器故障&故障原因分析:
機(jī)房意外斷電導(dǎo)致服務(wù)器中一臺(tái)VPS(Xen Server虛擬機(jī))不可用,虛擬磁盤文件丟失。
北亞企安數(shù)據(jù)恢復(fù)工程師將故障服務(wù)器中所有磁盤編號(hào)后取出,以只讀方式將所有磁盤完整鏡像到準(zhǔn)備好的備份空間,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免對原始磁盤數(shù)據(jù)造成二次破壞。備份完成后將所有磁盤按照編號(hào)還原到原服務(wù)器中。
基于鏡像文件分析底層數(shù)據(jù)發(fā)現(xiàn)故障服務(wù)器中的虛擬機(jī)磁盤是以LVM結(jié)構(gòu)管理的,即每個(gè)虛擬機(jī)的虛擬磁盤都是一個(gè)LV,虛擬磁盤模式是精簡模式。
LVM的相關(guān)信息在Xen Server中都有記載。查看“/etc/lvm/backup/“下LVM的相關(guān)信息,并沒有發(fā)現(xiàn)存在損壞的虛擬磁盤,可以初步判斷LVM的信息已經(jīng)被更新了。繼續(xù)分析底層,查找到還未更新的LVM信息。
北亞企安數(shù)據(jù)恢復(fù)——Xen server數(shù)據(jù)恢復(fù)
根據(jù)未更新的LVM信息找到虛擬磁盤的數(shù)據(jù)區(qū)域,發(fā)現(xiàn)該區(qū)域的數(shù)據(jù)已被破壞?,F(xiàn)在可以確定虛擬機(jī)不可用的原因是虛擬機(jī)的虛擬磁盤被破壞,導(dǎo)致虛擬機(jī)中的操作系統(tǒng)和數(shù)據(jù)丟失。核對這片區(qū)域,發(fā)現(xiàn)該區(qū)域有很多數(shù)據(jù)被破壞了,但還是發(fā)現(xiàn)了很多數(shù)據(jù)庫的頁碎片。因此可以嘗試將許多數(shù)據(jù)庫的頁碎片拼接為一個(gè)可用的數(shù)據(jù)庫。
服務(wù)器數(shù)據(jù)恢復(fù)方案:
方案a:根據(jù)RAR壓縮包的結(jié)構(gòu)可以找到很多壓縮包的數(shù)據(jù)開始位置,RAR壓縮包文件的第一個(gè)扇區(qū)中會(huì)記錄此RAR的文件名。因此將從用戶那里拿到的備份數(shù)據(jù)庫的壓縮包文件名和目前找到的壓縮包文件第一個(gè)扇區(qū)所記錄的文件名相匹配,即可找到備份數(shù)據(jù)庫壓縮包的開始位置。找到壓縮包的位置后仔細(xì)分析這片區(qū)域的數(shù)據(jù),然后將此區(qū)域的數(shù)據(jù)恢復(fù)出來并重命名為一個(gè)RAR格式的壓縮文件。嘗試解壓此壓縮包,發(fā)現(xiàn)解壓報(bào)錯(cuò)。
北亞企安數(shù)據(jù)恢復(fù)——Xen server數(shù)據(jù)恢復(fù)
仔細(xì)分析恢復(fù)出來的壓縮包,發(fā)現(xiàn)其中有部分?jǐn)?shù)據(jù)被破壞,解壓報(bào)錯(cuò)。嘗試使用RAR的修復(fù)工具處理后解壓。結(jié)果修復(fù)完成之后解壓出來的數(shù)據(jù)只包含網(wǎng)站的部分代碼,并沒有發(fā)現(xiàn)數(shù)據(jù)庫的備份文件。因此可以判斷在RAR壓縮包中的數(shù)據(jù)庫的備份文件已經(jīng)是損壞的。
解壓出來的部分網(wǎng)站代碼:
北亞企安數(shù)據(jù)恢復(fù)——Xen server數(shù)據(jù)恢復(fù)
方案b:
方案a沒有將數(shù)據(jù)庫恢復(fù)出來。北亞企安數(shù)據(jù)恢復(fù)工程師采用方案b。根據(jù)SQL Server數(shù)據(jù)庫的結(jié)構(gòu)分析數(shù)據(jù)庫的開始位置。SQL Server數(shù)據(jù)庫第9個(gè)頁會(huì)記錄本數(shù)據(jù)庫的數(shù)據(jù)庫名。在用戶那里獲取到數(shù)據(jù)庫的名稱之后,分析底層找到此數(shù)據(jù)庫的開始位置。在SQL Server數(shù)據(jù)庫的每個(gè)頁中都會(huì)記錄數(shù)據(jù)庫頁編號(hào)以及文件號(hào),根據(jù)這些SQL Server數(shù)據(jù)庫特征,北亞企安數(shù)據(jù)恢復(fù)工程師編寫程序去底層掃描符合數(shù)據(jù)庫頁的數(shù)據(jù)。將掃描出來的數(shù)據(jù)庫頁碎片按順序重組成一個(gè)完整MDF文件。通過MDF校驗(yàn)程序檢測整個(gè)MDF文件的完整性。
北亞企安數(shù)據(jù)恢復(fù)——Xen server數(shù)據(jù)恢復(fù)
驗(yàn)證數(shù)據(jù):
檢測沒問題之后,由數(shù)據(jù)庫工程師搭建數(shù)據(jù)庫環(huán)境,將重組后的數(shù)據(jù)庫附加到搭建好的數(shù)據(jù)庫環(huán)境中。查詢相關(guān)表數(shù)據(jù)是否正常以及最新數(shù)據(jù)是否存在。檢測沒有問題后,在網(wǎng)站開發(fā)商的幫助下用網(wǎng)站代碼搭建好環(huán)境,將恢復(fù)好的數(shù)據(jù)庫發(fā)給用戶在環(huán)境中配置好。經(jīng)過用戶驗(yàn)證后沒有發(fā)現(xiàn)問題,確認(rèn)恢復(fù)數(shù)據(jù)完整有效。本次數(shù)據(jù)恢復(fù)工作完成。
北亞企安數(shù)據(jù)恢復(fù)——Xen server數(shù)據(jù)恢復(fù)
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9262瀏覽量
85768 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
584瀏覽量
17554
發(fā)布評論請先 登錄
相關(guān)推薦
評論