伺服器磁碟陣列資料恢復,raid資料恢復方法

北亞資料恢復發表於2018-03-22
【物理伺服器與邏輯儲存介紹】 
客戶使用一臺IBM 3850伺服器,4塊300GB SAS磁碟做的RAID5磁碟陣列。伺服器作業系統為 windows2003 x64,跑有一個單節點Oracle,版本為11.2.0.2 ,資料儲存為檔案系統,無歸檔。此oracle資料量不大,oracle 內只有一個使用者建的使用者,使用預設的users 表空間,users 表空間下僅有一個資料檔案,大小不到 1GB。

【伺服器故障現象】
由於負荷過重,儲存底層的RAID磁碟陣列出現問題,使用者為了挽救資料做了一系列重建RAID的操作,後因一磁碟出現故障而中止RAID初始化,但有少量資料被同步而破壞,此時RAID磁碟陣列已可訪問,
系統雖出現錯誤,但能正常啟動,但D盤也就是oracle資料庫所在分割槽報錯無法開啟,客戶chkdsk後能正常開啟,但oracle無法啟動,客戶在原盤上重灌了 oracle系統,並匯入了以前備份的 dmp檔案,但資料差得太多。

【資料恢復過程】
客戶聯絡到北京資料恢復中心後,資料恢復中心安排Oracle資料恢復工程師和伺服器資料恢復工程師同時來到客戶現場進行恢復。

首先分析RAID層: 重建RAID會帶來最為嚴重的破壞,但分析發現重建的RAID的塊大小、盤序都和原來一樣,而在初始化過程中僅同步了前部的少量資料,RAID層損壞不大,資料庫還沒被破壞。

然後分析後面管理員對分割槽chkdsk和重灌oracle系統和匯入 dmp檔案所帶來的破壞: Chkdsk並不會破壞使用者資料區,chkdsk只對檔案系統後設資料區修改。這時資料庫檔案仍無破壞,最多隻是檔案的MFT或目錄項被破壞。最嚴重的是重灌 Oracle系統和匯入dmp檔案,這不只是對 檔案系統後設資料區進行破壞,還對使用者資料區進行覆蓋。

第三步對D盤的NTFS檔案系統進行分析:發現原所有oracle資料檔案的的MFT均被覆蓋,NTFS日誌也早被輪迴覆蓋,從NTFS後設資料區找不可利用資訊。只能使用資料恢復中心內部的Oracle恢復程式對整個分割槽進行恢復。經掃描,發現 Oracle例項為 ANSORA,掃描出的一個原始完整的控制檔案和一個原始完整的undotbs表空間資料檔案,重要的system和 users表空間資料檔案都有不同程度的破壞,

其中system表空間的資料檔案僅剩中後部的10MB,原始應有約700MB,而 users 表空間的資料檔案也有部分被覆蓋,但僅4MB。
提取出找到了資料,下一步對嚴重損壞的資料庫進行修復。

由於 system表空間不可用,無法得到資料字典,在和客戶溝通後,客戶確認了重要的三張表,這三張表也較大,從客戶imp回去的資料庫中得到了這三張表的結構,再從恢復 users表空間的資料檔案中找到對應的segment,但有一張表死活無法對應上,再次詢問客戶,客戶表示這一張表有過更改欄位的操作,再構建新的表結構對應上users表空間資料檔案中segment,然後透過 oracle官方的dul工具提取這三張表的資料,客戶驗證後,表示資料已無問題。

【資料恢復結果】耗時三天,使用者指定資料99%以上恢復成功。

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

相關文章