溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

遇到RAID5陣列硬盤出現(xiàn)問題的情況該如何解決?

發(fā)布時間:2020-08-30 18:12:10 來源:網(wǎng)絡 閱讀:3004 作者:宋國建 欄目:建站服務器

【故障描述】
華為S5300,12塊FC硬盤,整個存儲空間由450GB和600G FC的硬盤組成,其中11塊硬盤組成一個RAID5的陣列,剩余1塊做成熱備盤使用。由于RAID5陣列中出現(xiàn)1塊硬盤故障,熱備盤成功激活,在進行同步的過程中又一塊硬盤出現(xiàn)故障,因此導致RAID5陣列癱瘓,上層LUN無法正常使用。
【恢復過程】
一、檢測磁盤

由于存儲是因為RAID陣列中某些磁盤掉線,從而導致整個存儲不可用。因此接收到磁盤以后先對所有磁盤做物理檢測,檢測完后發(fā)現(xiàn)一塊硬盤有物理故障,其他硬盤沒有物理故障。
二、備份數(shù)據(jù)
考慮到,數(shù)據(jù)的安全性以及可還原性,在做數(shù)據(jù)恢復之前需要對所有源數(shù)據(jù)做備份,以防萬一其他原因?qū)е聰?shù)據(jù)無法再次恢復。使用dd命令或winhex工具將所有磁盤都鏡像成文件。
三、故障分析
1、分析故障原因

由于前兩個步驟并檢測到磁盤有物理故障,由此推斷可能是由于某些磁盤讀寫不穩(wěn)定和物理故障導致故障發(fā)生。因為華為S5300控制器檢查磁盤的策略很嚴格,一旦某些磁盤性能不穩(wěn)定,華為S5300控制器就認為是壞盤,就將認為是壞盤的磁盤踢出RAID組。而一旦RAID組中掉線的盤到達到RAID級別允許掉盤的極限,那么這個RAID組將變的不可用,上層基于RAID組的LUN也將變的不可用,之后又新建RAID,有一塊硬盤在同步的過程中被損壞,目前初步了解的情況為基于RAID組的LUN分配給linux系統(tǒng)使用,重要數(shù)據(jù)為Oracle數(shù)據(jù)庫。
2、分析RAID組結(jié)構(gòu)
華為S5300存儲的LUN都是基于RAID組的,因此需要先分析底層RAID組的信息,然后根據(jù)分析的信息重構(gòu)原始的RAID組。分析每一塊數(shù)據(jù)盤,發(fā)現(xiàn)一塊盤的數(shù)據(jù)同其它數(shù)據(jù)盤不太一樣,初步認為可能是hot Spare盤。接著分析其他數(shù)據(jù)盤,分析Oracle數(shù)據(jù)庫頁在每個磁盤中分布的情況,并根據(jù)數(shù)據(jù)分布的情況得出RAID組的條帶大小,磁盤順序及數(shù)據(jù)走向等RAID組的重要信息。
3、分析RAID組被同步損壞盤
根據(jù)上述分析的RAID信息,嘗試通過北亞自主開發(fā)的RAID虛擬程序?qū)⒃嫉腞AID組虛擬出來。但由于整個RAID組中掉線兩塊盤并且有一塊硬盤數(shù)據(jù)被同步損壞。仔細分析每一塊硬盤中的數(shù)據(jù),發(fā)現(xiàn)有一塊硬盤在同一個條帶上的數(shù)據(jù)和其他硬盤明顯不一樣,因此初步判斷此硬盤可能是被同步掉損壞的硬盤,通過北亞自主開發(fā)的RAID校驗程序?qū)@個條帶做校驗,因此可以明確被同步損壞盤了。
4、分析RAID組中的LUN信息
由于LUN是基于RAID組的,因此需要根據(jù)上述分析的信息將RAID組最新的狀態(tài)虛擬出來。然后分析LUN在RAID組中的分配情況,以及LUN分配的數(shù)據(jù)塊MAP。因此只需要將LUN的數(shù)據(jù)塊分布MAP提取出來。然后針對這些信息編寫相應的程序,LUN的數(shù)據(jù)MAP做解析,然后根據(jù)數(shù)據(jù)MAP并導出LUN的數(shù)據(jù)。
四、解析EXT3文件系統(tǒng)
1、解析EXT3文件系統(tǒng)

由于是使用熱備盤虛擬的RAID結(jié)構(gòu),EXT3文件系統(tǒng)無法正常掛載,所以只能提取oracle數(shù)據(jù)庫文件,利用自主開發(fā)的文件系統(tǒng)解析程序?qū)ζ溥M行文件系統(tǒng)的解析,導出oracle數(shù)據(jù)庫文件,并把數(shù)據(jù)庫文件移交給數(shù)據(jù)庫工程師進行校驗和驗證
五、檢測Oracle數(shù)據(jù)庫文件及修復
1、檢測數(shù)據(jù)庫文件是否完整

使用Oracle數(shù)據(jù)庫文件檢測工具檢測每個數(shù)據(jù)庫文件是否完整,發(fā)現(xiàn)有錯誤。再使用北亞自主研發(fā)的Oracle數(shù)據(jù)庫檢測工具(檢驗更嚴格),發(fā)現(xiàn)有部分數(shù)據(jù)庫文件和日志文件錯誤, system 和 sysaux表空間各存在100多壞塊;3個控制文件都存在壞塊許多壞塊,控制文件全部損壞;eschoolspace表空間的3個文件的壞塊更多,達到1000個;undotbs02丟失;數(shù)據(jù)庫工程師對此類文件進行修復,如下圖:
遇到RAID5陣列硬盤出現(xiàn)問題的情況該如何解決?
遇到RAID5陣列硬盤出現(xiàn)問題的情況該如何解決?
2、修復Oracle數(shù)據(jù)庫
我們創(chuàng)建了控制文件,創(chuàng)建undo表空間,啟動數(shù)據(jù)庫到mount。system數(shù)據(jù)文件壞塊使得數(shù)據(jù)庫不能open。各種隱含參數(shù)也不能繞過system的壞塊;搭建數(shù)據(jù)庫環(huán)境。使用dmp文件還原數(shù)據(jù)庫。使用3月9號之后的導入,都報錯,大約只能導入10G左右的數(shù)據(jù),如下圖:
遇到RAID5陣列硬盤出現(xiàn)問題的情況該如何解決?
六、數(shù)據(jù)驗證
由用戶方配合,啟動Oracle數(shù)據(jù)庫,在本地虛擬機安裝OA客戶端。通過OA客戶端對數(shù)據(jù)記錄進行驗證,并且用戶安排不同部門人員進行遠程驗證。

七、數(shù)據(jù)恢復結(jié)論
由于故障發(fā)生后又重建RAID,導致一塊盤的數(shù)據(jù)被同步損壞,對后期的數(shù)據(jù)恢復造成了困難。因為熱備盤同步了一段時間寫入了部分數(shù)據(jù),所以使用熱備盤里面的數(shù)據(jù)進行恢復,只能恢復部分數(shù)據(jù),只有3月9日之前的數(shù)據(jù)。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI