服務器數據恢復環境&故障:
某單位同友存儲設備,該存儲有大于5臺的虛擬機,其中有3臺linux系統虛擬機存儲重要數據。存儲設備中組建的raid5由于未知原因崩潰導致存儲無法啟動。
存儲結構:
北亞企安數據恢復——raid5數據恢復
服務器數據恢復過程:
1、對故障存儲raid5磁盤陣列中所有磁盤數據以只讀方式做鏡像備份,后續的數據分析和數據恢復操作都基于鏡像文件進行,避免對原始數據造成二次破壞。
2、通過底層數據分析故障raid5結構相關信息,根據分析獲取到的raid信息重組raid。重組raid過程中發現該raid5有2塊磁盤缺失(第1塊掉線盤掉線后由熱備盤頂替,第二塊磁盤掉線導致RAID5處于降級狀態,第三塊磁盤盤片劃傷掉線最終導致RAID5崩潰),無法通過校驗直接獲取缺失磁盤的數據,只能使用磁盤同等大小的全0鏡像進行重組(此方法只可用于緊急情況,因為依賴空鏡像組建的raid文件系統結構會嚴重損壞,即每個條帶都會缺失兩個塊的數據)。
重建raid:
北亞企安數據恢復——raid5數據恢復
3、分析故障存儲的結構,獲取存儲劃分的MAP塊。在找到MAP塊之后通過解析獲取各個LUN的數據塊指針,北亞企安數據恢復工程師編寫數據提取程序提取LUN碎片。提取完成后通過碎片拼接方式組成完整LUN。
提取LUN:
北亞企安數據恢復——raid5數據恢復
4、導出LUN內所有虛擬機并嘗試啟動,但是由于操作系統被嚴重破壞,虛擬機無法啟動。
5、提取虛擬機內文件。提取完所有文件后對提取出來的文件進行測試,測試后發現大多數文件有不同程度的損壞,只有部分小文件可以正常打開。
6、與用戶溝通后得知虛擬機內有mysql數據庫,由于mysql數據庫底層存儲的特殊性,可以通過掃描數據頁進行數據提取。在找到有mysql數據庫的虛擬機后發現此虛擬機已經啟用快照,父盤和快照文件都破壞的情況下無法進行常規合并操作,只能使用北亞企安自主研發的VMFS快照合并程序進行快照合并。
北亞企安數據恢復——raid5數據恢復
7、根據mysql數據頁特征進行數據頁掃描并導出(僅innodb引擎可使用此方案),分析系統表獲取各用戶表信息并根據各個表的id進行數據頁分割。
8、由于該mysql數據庫已經使用很長一段時間了,表結構也經過多次變更,在存儲損壞后系統表也有部分數據丟失,在提取記錄的過程碰到很多問題。
首先獲取最初版本數據庫各個表的表結構:合并快照前的父盤因為寫入較早,使用第一塊掉線盤進行校驗獲取到這個文件的完整數據,然后提取出其中數據庫各個表的表結構,之后用戶方提供了最新版的數據庫建表腳本。
9、分別使用兩組不同表結構提取數據記錄并導入到搭建好的mysql數據庫內,剔除各個表中因為表結構變更造成的亂碼數據,然后將兩組數據分別導出為.sql文件。
10、聯系用戶方應用工程師進行調試,把恢復出來的數據導入平臺后調試成功,數據恢復完成。
審核編輯:湯梓紅
-
服務器
+關注
關注
12文章
9021瀏覽量
85184 -
數據恢復
+關注
關注
10文章
549瀏覽量
17390 -
RAID5
+關注
關注
0文章
112瀏覽量
12705
發布評論請先 登錄
相關推薦
評論