服務(wù)器存儲(chǔ)數(shù)據(jù)恢復(fù)環(huán)境&故障:
一臺(tái)某品牌DS4700存儲(chǔ)中有14塊硬盤組建raid,存放的是oracle數(shù)據(jù)庫。存儲(chǔ)中有兩塊硬盤的指示燈亮黃色,raid崩潰,卷無法掛載,業(yè)務(wù)全部癱瘓。
服務(wù)器存儲(chǔ)故障檢測:
服務(wù)器數(shù)據(jù)恢復(fù)工程師通過IBM storage manager連接存儲(chǔ)查看服務(wù)器存儲(chǔ)的當(dāng)前狀態(tài),發(fā)現(xiàn)邏輯卷狀態(tài)失敗。對(duì)物理磁盤狀態(tài)進(jìn)行查看,發(fā)現(xiàn)13號(hào)磁盤狀態(tài)為“警告”,10號(hào)和11號(hào)磁盤狀態(tài)為“失敗”。通過IBM storage manager對(duì)當(dāng)前存儲(chǔ)的全部日志進(jìn)行備份并解析邏輯卷結(jié)構(gòu)信息。
服務(wù)器存儲(chǔ)數(shù)據(jù)恢復(fù)過程:
1、將服務(wù)器存儲(chǔ)中全部磁盤編號(hào)后取出槽位,由硬件工程師進(jìn)行物理故障檢測。經(jīng)過初步檢測,所有硬盤均可以正常識(shí)別,13號(hào)盤SMART狀態(tài)為“警告”,和在IBM storage manager中的狀態(tài)一致。
2、服務(wù)器數(shù)據(jù)恢復(fù)工程師在windows環(huán)境下的磁盤管理器中將可以識(shí)別的磁盤標(biāo)記為脫機(jī)狀態(tài),使用工具將所有磁盤進(jìn)行扇區(qū)級(jí)別鏡像操作(在鏡像過程中13號(hào)硬盤的鏡像速度極其緩慢,初步判斷該盤存在壞道或者不穩(wěn)定/損壞扇區(qū),需要使用專業(yè)設(shè)備處理)。在使用專業(yè)設(shè)備對(duì)13號(hào)硬盤做鏡像的過程中觀察鏡像狀態(tài),發(fā)現(xiàn)13號(hào)盤的壞道并不多,只是存在大量不穩(wěn)定扇區(qū)。調(diào)整該磁盤的鏡像策略后繼續(xù)鏡像。鏡像完成后將所有磁盤按照編號(hào)還原到原存儲(chǔ)中。后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免對(duì)原始磁盤數(shù)據(jù)造成二次破壞。
3、基于鏡像文件查看生成的日志,發(fā)現(xiàn)在IBM storage manager和硬盤SMART狀態(tài)中均沒有發(fā)現(xiàn)異常的1號(hào)盤、10號(hào)和11號(hào)盤均存在大量不規(guī)律的壞道分布。結(jié)合壞道列表情況進(jìn)行分析,EXT3文件系統(tǒng)中的部分關(guān)鍵性源數(shù)據(jù)處于壞道區(qū)域,北亞企安數(shù)據(jù)恢復(fù)工程師通過13號(hào)硬盤的鏡像文件進(jìn)行同一條帶的xor,
并根據(jù)文件系統(tǒng)的上下關(guān)系手動(dòng)修復(fù)損壞的文件系統(tǒng)。
4、通過對(duì)ext3文件系統(tǒng)的逆向以及日志文件的分析獲取到盤序、raid校驗(yàn)方向、raid塊大小、raid校驗(yàn)方式等信息,利用獲取到的信息虛擬重組raid。重組完成后解析EXT3文件系統(tǒng),將oracle數(shù)據(jù)庫中的dmp文件進(jìn)行部分提取。
5、在恢復(fù)dmp的過程中出現(xiàn)內(nèi)容為“imp-0008”的報(bào)錯(cuò),經(jīng)過分析發(fā)現(xiàn)報(bào)錯(cuò)原因是dmp文件有問題。再次重組raid并重新導(dǎo)出dmp文件和dbf原始庫文件進(jìn)行測試,dbf原始庫文件均能通過測試。
6、把數(shù)據(jù)庫文件拷貝到原數(shù)據(jù)庫服務(wù)器中,路徑為“/home/oracle/tmp/syntong”。在根目錄下創(chuàng)建一個(gè)oradata文件夾,把整個(gè)syntong文件夾拷貝到oradata目錄下,更改oradata文件夾及其所有文件的屬組和權(quán)限。
7、備份原數(shù)據(jù)庫環(huán)境,包括ORACLE_HOME下product文件夾下的相關(guān)文件。配置監(jiān)聽,使用splplus連接到數(shù)據(jù)庫,嘗試啟動(dòng)數(shù)據(jù)庫到nomount狀態(tài)。進(jìn)行狀態(tài)查詢沒有發(fā)現(xiàn)環(huán)境和參數(shù)文件有問題。 嘗試啟動(dòng)數(shù)據(jù)庫到mount狀態(tài),進(jìn)行狀態(tài)查詢沒有問題。啟動(dòng)數(shù)據(jù)庫到open狀態(tài)。出現(xiàn)報(bào)錯(cuò):
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '/oradata/syntong/system01.dbf'
ORA-01207: file is more recent than control file - old control file
經(jīng)過檢測和分析,判斷此故障為控制文件和數(shù)據(jù)文件信息不一致,這是一種常見的由于異常關(guān)機(jī)所引起的故障。
8、對(duì)數(shù)據(jù)庫文件進(jìn)行逐個(gè)檢測,經(jīng)過檢測沒有發(fā)現(xiàn)有數(shù)據(jù)庫文件存在物理損毀的情況。
9、在mount狀態(tài)下備份控制文件,alter database backup controlfile to trace as ' /backup/controlfile';對(duì)備份的控制文件進(jìn)行查看修改,獲取到其中的重建控制文件命令。把這些命令復(fù)制到一個(gè)新建腳本文件controlfile.sql中。
10、關(guān)閉數(shù)據(jù)庫,刪除/oradata/syntong/下的3個(gè)控制文件。 啟動(dòng)數(shù)據(jù)庫到nomount狀態(tài),執(zhí)行controlfile.sql 腳本。
SQL>startup nomount
SQL>@controlfile.sql
11、重建控制文件后,直接啟動(dòng)數(shù)據(jù)庫報(bào)錯(cuò),需要進(jìn)一步處理。
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: '/free/oracle/oradata/orcl/system01.dbf'
然后執(zhí)行恢復(fù)命令:
recover database using backup controlfile until cancel;
Recovery of Online Redo Log: Thread 1 Group 1 Seq 22 Reading mem 0
Mem# 0 errs 0: /free/oracle/oradata/orcl/redo01.log
…
做介質(zhì)恢復(fù),直到返回報(bào)告,恢復(fù)完成。
12、嘗試open數(shù)據(jù)庫。
SQL> alter database open resetlogs;
13、數(shù)據(jù)庫啟動(dòng)成功。把原來temp表空間的數(shù)據(jù)文件加入到對(duì)應(yīng)的temp表空間中。
14、對(duì)數(shù)據(jù)庫進(jìn)行各種常規(guī)檢查,沒有發(fā)現(xiàn)任何錯(cuò)誤。
15、進(jìn)行emp備份,全庫備份完成,沒有報(bào)錯(cuò)。將應(yīng)用程序連接到數(shù)據(jù)庫,進(jìn)行應(yīng)用層面的數(shù)據(jù)驗(yàn)證,一切正常,本次數(shù)據(jù)恢復(fù)工作完成。
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
8701瀏覽量
84552 -
RAID
+關(guān)注
關(guān)注
0文章
263瀏覽量
34982 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
507瀏覽量
17204 -
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3712瀏覽量
64025
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論