服務(wù)器故障環(huán)境:
HP MSA某型號存儲,8塊SAS的硬盤組建RAID5磁盤陣列,其中包括1塊熱備盤。故障存儲中基于該RAID組的LUN均分配給HP-Unix小機(jī)使用,上層做的LVM邏輯卷,存儲的數(shù)據(jù)為Oracle數(shù)據(jù)庫及OA服務(wù)端。
服務(wù)器故障:
RAID5磁盤陣列中2塊磁盤未知原因離線,陣列中的熱備盤雖然成功激活,RAID5磁盤陣列癱瘓,上層LUN不可用。
服務(wù)器數(shù)據(jù)恢復(fù)過程:
1、由于存儲中RAID陣列崩潰是由于磁盤掉線導(dǎo)致的,拿到磁盤后先由硬件工程師對故障存儲中的所有磁盤做物理故障檢測,檢測后沒有發(fā)現(xiàn)硬盤存在物理故障。使用壞道檢測工具檢測磁盤壞道,也沒有發(fā)現(xiàn)壞道。
2、將故障存儲中所有硬盤以只讀方式做完整的鏡像備份,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免數(shù)據(jù)恢復(fù)操作可能對原始數(shù)據(jù)造成二次破壞。
部分備份數(shù)據(jù):
北亞企安數(shù)據(jù)恢復(fù)——vxfs文件系統(tǒng)數(shù)據(jù)恢復(fù)
3、由于故障存儲中所有磁盤不存在物理故障,也沒有發(fā)現(xiàn)壞道,所以磁盤離線原因就是某些磁盤讀寫不穩(wěn)定。因?yàn)樵?a target="_blank">品牌存儲的RAID控制器針對磁盤的檢測策略比較嚴(yán)格,極大可能性把性能不穩(wěn)定的磁盤認(rèn)定為壞盤并踢出RAID組。一旦RAID組中掉線的磁盤數(shù)量超過該RAID級別允許掉盤的最大數(shù)量,這個(gè)RAID組就會崩潰,上層基于RAID組的LUN也將不可用。
4、分析RAID組的信息如條帶大小,磁盤順序及數(shù)據(jù)走向等,然后根據(jù)分析獲取到的raid信息重構(gòu)RAID組。經(jīng)過分析發(fā)現(xiàn)其中一塊盤的數(shù)據(jù)和其它盤不太一樣,初步判斷這塊盤就是熱備盤。分析其他數(shù)據(jù)盤(除了熱備盤)的底層,搞清楚Oracle數(shù)據(jù)庫頁在每個(gè)磁盤中分布的情況。
5、分析數(shù)據(jù)盤中的數(shù)據(jù)發(fā)現(xiàn)有一塊硬盤在同一個(gè)條帶上的數(shù)據(jù)和其他硬盤不一樣,初步判斷此盤是先掉線的,通過北亞企安自主開發(fā)的RAID校驗(yàn)程序?qū)@個(gè)條帶做校驗(yàn),最終確定這塊盤就是先掉線的那塊硬盤。
6、由于LUN是基于RAID組的,將RAID組重構(gòu)出來之后就開始分析LUN在RAID組中的分配情況以及LUN分配的數(shù)據(jù)塊MAP。將每一個(gè)LUN的數(shù)據(jù)塊分布MAP提取出來,然后針對這些信息編寫程序解析所有LUN的數(shù)據(jù)MAP,然后根據(jù)數(shù)據(jù)MAP導(dǎo)出所有LUN的數(shù)據(jù)。
北亞企安數(shù)據(jù)恢復(fù)——vxfs文件系統(tǒng)數(shù)據(jù)恢復(fù)
7、分析生成出來的所有LUN,發(fā)現(xiàn)所有LUN中均包含HP-Unix的LVM邏輯卷信息。嘗試解析每個(gè)LUN中的LVM信息后發(fā)現(xiàn)一共有3個(gè)LVM:其中1個(gè)LVM中劃分了一個(gè)LV,里面存放OA服務(wù)器端的數(shù)據(jù);另外1個(gè)LVM中也劃分了一個(gè)LV,里面存放臨時(shí)備份數(shù)據(jù);最后1個(gè)LVM也只劃分了一個(gè)LV,里面存放Oracle數(shù)據(jù)庫文件。北亞企安數(shù)據(jù)恢復(fù)工程師編寫LVM解釋程序解釋每個(gè)LVM中的LV卷,但在解釋過程中程序出錯(cuò)。
8、仔細(xì)分析程序報(bào)錯(cuò)的原因,由開發(fā)工程師debug程序出錯(cuò)的位置,并同時(shí)檢測恢復(fù)出來的LUN,檢測LMV邏輯卷的信息是否損壞。經(jīng)過檢測發(fā)現(xiàn)LVM信息已經(jīng)損壞。嘗試人工修復(fù)損壞的區(qū)域,并同步修改LVM解釋程序重新解析LVM邏輯卷。
9、搭建HP-Unix環(huán)境,將解釋出來的LV卷映射到HP-Unix并嘗試掛載文件系統(tǒng),結(jié)果掛載文件系統(tǒng)出錯(cuò)。嘗試使用“fsck –F vxfs” 命令修復(fù)vxfs文件系統(tǒng),修復(fù)完成后發(fā)現(xiàn)還是不能成功掛載。懷疑是底層vxfs文件系統(tǒng)的部分元數(shù)據(jù)已經(jīng)破壞。
10、分析解析出來的LV并根據(jù)VXFS文件系統(tǒng)的底層結(jié)構(gòu)校驗(yàn)此文件系統(tǒng)是否完整。分析結(jié)果發(fā)現(xiàn)底層VXFS文件系統(tǒng)有問題,存儲設(shè)備癱瘓的時(shí)候文件系統(tǒng)正在執(zhí)行IO操作,部分文件系統(tǒng)元文件損壞。北亞企安數(shù)據(jù)恢復(fù)工程師手工修復(fù)這些損壞的元文件,直至VXFS文件系統(tǒng)能夠被正常解析。
11、再次將修復(fù)好的LV卷掛載到HP-Unix小機(jī)上,嘗試Mount文件系統(tǒng),文件系統(tǒng)成功掛載。
12、在HP-Unix小機(jī)上mount文件系統(tǒng)后,將所有用戶數(shù)據(jù)均備份至指定的磁盤空間。
部分文件目錄:
北亞企安數(shù)據(jù)恢復(fù)——vxfs文件系統(tǒng)數(shù)據(jù)恢復(fù)
13、使用工具檢測每個(gè)Oracle數(shù)據(jù)庫文件的完整性,沒有發(fā)現(xiàn)問題。使用北亞企安自主開發(fā)的Oracle數(shù)據(jù)庫檢測工具(檢驗(yàn)更嚴(yán)格)進(jìn)行檢測,發(fā)現(xiàn)有部分Oracle數(shù)據(jù)庫文件和日志文件校驗(yàn)不一致。數(shù)據(jù)庫工程師對這部分文件進(jìn)行修復(fù)并再次校驗(yàn),直到所有Oracle數(shù)據(jù)庫文件校驗(yàn)通過。
14、將恢復(fù)出來的Oracle數(shù)據(jù)庫附加到原始生產(chǎn)環(huán)境的HP-Unix服務(wù)器中,啟動(dòng)Oracle數(shù)據(jù)庫成功。
北亞企安數(shù)據(jù)恢復(fù)——vxfs文件系統(tǒng)數(shù)據(jù)恢復(fù)
數(shù)據(jù)驗(yàn)證:
在用戶方工程師的配合下,啟動(dòng)Oracle數(shù)據(jù)庫和OA服務(wù)端。通過筆記本電腦上安裝的OA客戶端對最新的數(shù)據(jù)記錄以及歷史數(shù)據(jù)記錄進(jìn)行反復(fù)驗(yàn)證,并且安排用戶方公司不同部門人員進(jìn)行遠(yuǎn)程驗(yàn)證。最終確認(rèn)數(shù)據(jù)無誤,完整可用。本次數(shù)據(jù)恢復(fù)工作完成。
審核編輯:湯梓紅
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9287瀏覽量
85847 -
RAID
+關(guān)注
關(guān)注
0文章
279瀏覽量
35140 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
585瀏覽量
17577 -
文件系統(tǒng)
+關(guān)注
關(guān)注
0文章
287瀏覽量
19937
發(fā)布評論請先 登錄
相關(guān)推薦
評論