1. 程式人生 > >北亞數據恢復關於服務器存儲MDisk重建的數據恢復方法的研究

北亞數據恢復關於服務器存儲MDisk重建的數據恢復方法的研究

數據恢復 北亞數據恢復 存儲 mdisk重建 數據庫

很多工程師都有這樣的疑問,MDisk重建後還能不能恢復數據呢?應該怎麽做才能恢復數據呢?本文這裏就以IBM V7000存儲為例,詳細講解因為某個MDisk被重建導致的數據丟失的恢復方法。我們本案例中的存儲由於MDisk重建導致對應的存儲池中的VDisk丟失,從而影響上層Solaris操作系統中的Oracle數據庫無法正常使用。

技術分享


1、前期備份方法

由於對設備的分析和恢復均不在原始設備進行操作,所以首先我們需要把所有涉及到Oracle數據庫的VDisk以只讀模式鏈接到備份服務器,使用dd或Winhex等專業工具對映射過來的VDisk做只讀模式的數據庫備份。然後對重建後的MDisk成員盤進行排序標記並以正常模式取出IBM V7000磁盤櫃,將取出的硬盤連接到專業的設備,並做只讀模式的全盤鏡像。等到所有備份完成以後再對所有鏈路及物理硬盤進行還原,後期分析和恢復均不在原始設備上操作。


2、MDisk及VDisk恢復方法

A、對備份的MDisk成員盤做只讀模式的數據分析,判斷是否會因MDisk重建導致數據大量丟失。

B、分析重建後RAID6的數據分布規則,並計算出RAID6的雙校驗均寫到硬盤的具體位置。

C、對RAID6雙校驗破壞的數據區域結合RAID10的數據分布規則,盡最大可能的還原重建前的MDisk。

D、對恢復的MDisk做底層卷分析,取出精簡模式的數據MAP,並校驗數據MAP是否正常。

E、根據精簡模式的算法結合數據MAP,盡最大可能的還原VDisk。

F、檢測恢復的VDisk是否正常,否則重新分析A-E的步驟是否有無誤。


3、數據庫文件恢復及數據庫文件修復

A. 對恢復的VDisk及其他未損壞的VDisk做Oracle數據庫頁特征掃描,並生成相應的數據庫文件的特征集。

B. 根據數據庫的特征集分析出數據庫在所有VDisk中的數據分布MAP。

C. 恢復數據庫文件,並使用自主開發的Oracle數據庫檢測工具對恢復的數據庫文件做文件一致性檢測。

D. 如數據庫文件檢測正常、數據庫結構完整,則嘗試啟動數據庫實例,同時監控狀態。

E. MOUNT數據庫,查看數據庫文件狀態信息,查看數據庫整體狀態。嘗試OPEN數據庫,做實例恢復。

F. 驗證導出數據是否正確,否則重復A-E操作,之到數據正確為止。


4、MDisk重建數據恢復成功率預估

由於IBM V7000存儲中某個MDisk被重建了,導致上層VDisk及Oracle數據庫無法正常使用。如果MDisk重建後的類型為RAID6(之前為RAID10),就會導致部分數據破壞。按最差情況分析,會有2塊盤(RAID6的雙校驗)的數據損壞(事實上,也不會完全損壞),從損壞VDisk層面,數據完整度超過75%。而上層Oracle又由多個VDisk組成,因此上層Oracle層面,數據完整度超過95%。

技術分享

本文出自 “SUN” 博客,請務必保留此出處http://sun510.blog.51cto.com/9640486/1981780

北亞數據恢復關於服務器存儲MDisk重建的數據恢復方法的研究