伺服器資料恢復—raid5磁碟離線導致SAP資料丟失的資料恢復案例

北亚数据恢复發表於2024-04-15

伺服器儲存資料恢復環境:

某品牌伺服器儲存中有一組由6塊SAS硬碟組建的RAID5陣列,其中有1塊硬碟作為熱備盤使用。上層劃分若干lun,存放Oracle資料庫資料。


伺服器儲存故障&分析:

該RAID5陣列中一塊硬碟出現故障離線,熱備盤自動啟用替換故障硬碟,熱備盤同步資料的過程中該raid5陣列中又有一塊硬碟出現故障,RAID5陣列癱瘓,上層LUN無法正常訪問。

因為本案例中儲存控制器的磁碟檢查策略嚴格,一旦某些磁碟效能不穩定,該型號儲存控制器就將該塊磁碟識別為壞盤,並將該塊磁碟踢出RAID。一旦RAID中掉線的盤數到超過RAID級別允許掉盤的最大數量,該RAID將不可用,上層基於RAID的LUN也無法訪問,從而導致重要資料丟失。


伺服器資料恢復過程:

1、將故障伺服器儲存中所有磁碟編號後取出,由硬體工程師對所有磁碟做物理故障檢測,經過檢測發現有一塊硬碟存在物理故障,其他硬碟沒有發現明顯物理故障。將所有完好磁碟以只讀方式進行扇區級全盤映象。針對那塊故障磁碟,由專業工具處理後做映象。映象完成所有磁碟後,按照編號將所有磁碟還原到原伺服器中,後續的資料分析和資料恢復操作都基於映象檔案進行,避免對原始磁碟資料造成二次破壞。

2、分析RAID組結構

該品牌伺服器儲存的LUN是基於RAID的。北亞企安資料恢復工程師基於映象檔案分析底層RAID的資訊,透過分析找到了熱備盤。繼續分析其他硬碟的底層資料,分析Oracle資料庫頁在每個磁碟中分佈的情況,並根據資料分佈的情況得出RAID組的條帶大小,磁碟順序及資料走向等RAID的重要資訊,然後根據分析獲取到的資訊虛擬重構原RAID。

3、完成重組raid後,分析LUN在RAID中的分配情況,以及LUN分配的資料塊MAP。只需要將LUN的資料塊分佈MAP提取出來,然後針對這些資訊編寫相應的程式,解析LUN的資料MAP,然後根據資料MAP匯出LUN的資料。

4、伺服器儲存資料恢復方案:

a、資料恢復實施方案一

將Oracle資料庫資料所在的LUN進行JFS2檔案系統解析,人工修復檔案系統不完整的地方。利用北亞企安自主開發的JFS2檔案系統解析工具解析恢復的LUN,恢復檔案系統中所有的Oracle資料庫檔案,並檢測Oracle資料庫檔案的完整性。

針對檢測出有壞塊的資料庫檔案,掃描所有磁碟中的Oracle資料頁碎片,組合掃描出來的資料頁,透過人工將有壞塊的資料庫檔案填補修復完整。

在恢復完所有Oracle資料庫之後,發現其上層應用SAP還是無法使用。SAP應用的一些重要資料存放在損壞的儲存中,如果缺失這些資料,SAP即使在資料庫完整的情況下也無法正常使用,因此還需透過方案二來恢復所有SAP的重要資料。

b、資料恢復實施方案二

對恢復的所有LUN都進行檔案系統解析,並將存放SAP的資料LUN做檔案系統一致性檢測。對檔案系統不完整的部分透過人工進行修復,恢復所有SAP及SAP Test的資料。

檢測SAP資料,並修復損壞的SAP資料,確保恢復出來的所有SAP資料均完整,這樣才能保證SAP應用啟動。

結合恢復出來的SAP資料和資料庫,啟動SAP及所有應用即可。

5、啟動並修復Oracle資料及SAP應用

a、啟動資料庫並修復

將恢復出來的資料庫檔案還原到搭建好的環境中,嘗試啟動資料庫。由於資料庫的一些臨時檔案校驗不一致導致資料庫啟動失敗。Oracle資料庫工程師對資料庫進行修復後,資料庫啟動沒有問題,資料庫中的所有使用者及所有表均完整,嘗試啟動SAP。

b、啟動SAP並修復

將恢復出來的SAP檔案還原到已搭建好的環境中,並按照之前的啟動指令碼啟動SAP,SAP啟動正常,但SAP中使用者許可權及使用不正常,SAP表現為沒有序列號。資料恢復工程師懷疑SAP的註冊檔案沒有恢復出來。重新檢測恢復過程,排查可能疏忽的步驟,最後查明檔案系統的損壞導致某些檔案沒有恢復。重新修復檔案系統&恢復這些資料。啟動SAP正常,SAP使用正常。

6、由使用者方配合,啟動Oracle資料庫,啟動SAP,並透過SAP客戶端驗證SAP中所有的資料的完整性,經過驗證,使用者方確認資料完整有效,SAP正常使用。本次資料恢復工作完成。


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/31380569/viewspace-3012557/,如需轉載,請註明出處,否則將追究法律責任。

相關文章