Xen server虛擬化磁碟文件丟失的處理辦法

虛擬機故障檢測過程

準備足夠的數據空間並將客戶數據全盤備份至北亞數據恢復環境伺服器,分析該伺服器中的磁碟發現該伺服器中的磁碟以LVM的結構進行存放,這種形式中每一虛擬磁碟均為一個lv,虛擬磁碟為精簡模式,Xen Server有記載lvm的相關信息。

找到/etc/lvm/backup/frombtye.com 目錄,查詢lvm相關信息結果並沒有存在損壞的虛擬磁碟信息,lvm信息肯定已經被更新,只能通過對底層進行分析嘗試查詢未被更新的lvm信息。查詢結果如下(在底層找到了未被更新的lvm信息)

工程師順藤摸瓜找到了虛擬磁碟的數據區域,但數據已被破壞。所以導致虛擬機不可用的最終原因是虛擬磁碟被破壞引起了操作系統和數據丟失。

數據恢復方案一:

由於RAR壓縮包文件的存儲規律為文件第一扇區為該文件的名稱,所以通常情況下可以根據RAR壓縮包的結構提取數據的開始位置,然後根據備份資料庫壓縮包文件名和現有壓縮包位置文件名進行匹配就可以定位到資料庫壓縮包的起始位置,對這片壓縮包的區域進行數據恢復即可。

數據恢復過程十分順利,工程師將恢復出來的RAR格式文件進行解壓時卻報錯「rar壓縮文件底層損壞」。使用RAR的修復工具忽略錯誤對部分數據進行解壓後查詢文件,除部分網站代碼外並沒有可用的資料庫備份文件。planA失敗。

數據恢復方案二:

在資料庫結構中,通常會在第9頁記錄該資料庫的庫名,每個頁中都會記錄資料庫頁編號以及文件號。所以可以通過資料庫結構到底層分析資料庫起始位置,然後在底層掃描出符合資料庫頁的數據碎片重組mdf文件,(mdf文件重建後需要通過mdf校驗程序檢測文件是否完整)。最後由資料庫工程師搭建新的資料庫環境,將數據附加到該環境中。實施過程截圖如下:

數據恢復結果

通過拼資料庫碎片的方式成功將資料庫恢復完成,經客戶驗證後沒有問題,整個數據恢復成功。

推薦閱讀:

Ubuntu搭建Hadoop的踩坑之旅(一)
什麼是虛擬機?
Hyper-v的使用(安裝Ubuntu 14.04)
總結篇4-1 虛擬機擴展2——解釋運行高級語言
開始新的征程~VMware12安裝OS X10.11過程記錄

TAG:Linux | 虛擬機 | 伺服器 |