Asm diskgroup 的修復

yobyin發表於2012-10-10

  這是一個asm diskgroup  不能mount 修復的過程,前後花了兩週時間。時間有點長。  

   東南亞某國一運營商效能管理系統 7X24 小時系統

   OS:suse10

  DBMS:Oracle11gr1.07

  主機:IBM 。。不太清楚

  儲存: 華賽2600 ,有三個櫃

 

 週一  9:30運維的現場訊息過來,三個rac節點全部死了,起來了。

用crs_stat  一看asm  例項起不來了

檢asm.log

kfdp_queryBg(): 5
NOTE: cache opening disk 0 of grp 2: DG_ORA_0000 path:/dev/raw/raw3
NOTE: F1X0 found on disk 0 fcn 0.0
NOTE: cache opening disk 1 of grp 2: DG_ORA_0001 path:/dev/raw/raw4
NOTE: cache opening disk 2 of grp 2: DG_ORA_0002 path:/dev/raw/raw5
NOTE: cache opening disk 3 of grp 2: DG_ORA_0003 path:/dev/raw/raw6
NOTE: cache opening disk 4 of grp 2: DG_ORA_0004 path:/dev/raw/raw7
NOTE: cache opening disk 5 of grp 2: DG_ORA_0005 path:/dev/raw/raw8
NOTE: cache opening disk 6 of grp 2: DG_ORA_0006 path:/dev/raw/raw9
NOTE: cache mounting (first) group 2/0xBD785B38 (DG_ORA)
* allocate domain 2, invalid = TRUE
kjbdomatt send to node 0
kjbdomatt send to node 2
NOTE: attached to recovery domain 2
NOTE: starting recovery of thread=1 ckpt=348.1542 group=2
NOTE: starting recovery of thread=2 ckpt=189.5027 group=2
NOTE: starting recovery of thread=3 ckpt=182.5380 group=2
Errors in file /opt/oracle/db/diag/asm/+asm/+ASM2/trace/+ASM2_ora_13235.trc  (incident=4155):
ORA-00600: internal error code, arguments: [kfcema02], [0], [165057275], [], [], [], [], [], [], [], [], []
Incident details in: /opt/oracle/db/diag/asm/+asm/+ASM2/incident/incdir_4155/+ASM2_ora_13235_i4155.trc
Abort recovery for domain 2
NOTE: crash recovery signalled OER-600
ERROR: ORA-600 signalled during mount of diskgroup DG_ORA
ORA-00600: internal error code, arguments: [kfcema02], [0], [165057275], [], [], [], [], [], [], [], [], []
ERROR: ALTER DISKGROUP ALL MOUNT
NOTE: cache dismounting group 2/0xBD785B38 (DG_ORA)
NOTE: lgwr not being msg'd to dismount
Trace dumping is performing id=[cdmp_20120917220439]
kjbdomdet send to node 0
detach from dom 2, sending detach message to node 0
kjbdomdet send to node 2
detach from dom 2, sending detach message to node 2
freeing rdom 2
NOTE: detached from domain 2
NOTE: cache dismounted group 2/0xBD785B38 (DG_ORA)
NOTE: cache ending mount (fail) of group DG_ORA number=2 incarn=0xbd785b38
kfdp_dismount(): 6
kfdp_dismountBg(): 6
NOTE: De-assigning number (2,0) from disk (/dev/raw/raw3)
NOTE: De-assigning number (2,1) from disk (/dev/raw/raw4)
NOTE: De-assigning number (2,2) from disk (/dev/raw/raw5)
NOTE: De-assigning number (2,3) from disk (/dev/raw/raw6)
NOTE: De-assigning number (2,4) from disk (/dev/raw/raw7)
NOTE: De-assigning number (2,5) from disk (/dev/raw/raw8)
NOTE: De-assigning number (2,6) from disk (/dev/raw/raw9)
ERROR: diskgroup DG_ORA was not mounted
NOTE: cache dismounting group 1/0x0A485B37 (ASMREDO1)
kjbdomdet send to node 0
detach from dom 1, sending detach message to node 0
kjbdomdet send to node 2
detach from dom 1, sending detach message to node 2
NOTE: detached from domain 1
NOTE: cache dismounted group 1/0x0A485B37 (ASMREDO1)
kfdp_dismount(): 7
kfdp_dismountBg(): 7
NOTE: De-assigning number (1,0) from disk (/dev/raw/raw10)
ERROR: diskgroup ASMREDO1 was not mounted

經過一系列的嘗試,找現場各路人瞧一下無進展,開始進入磁陣管理平臺檢視

因為是遠端的VPN,所以比較慢。一看磁陣有三個櫃,其中第三個櫃的全部warning 狀態。這是先要解決的問題,聯絡儲存技術人員,收集各種日誌。

第三個櫃是一個控制器有效,但這個唯的的控制器要出現問題,又一陣現場畫圖

 

 

 

 

 

 

 

 

 

 

 

 

 

經人確認,原來的聯線是有問題的,只有一控制器,這個控制器也壞了。

重新聯線,重啟櫃子。好了。

這時已經是晚上10點多了。

開始啟動資料庫,完了。ASM例項還是沒有起來。

經過一系列的嘗試

 ASM 例項裡有兩個DISKGROUP ,一個小的DISKGROUP REDODG 存放的是redo control spfile 檔案,另外DGORA diskgroup 存放的是所有的資料檔案,size 在4T左右.

開SR ,經過長時間的等待 方案確定.

透過amdu 把數制抽取出來

舉例 amdu 使用

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`

amdu -diskstring '/dev/raw/raw*' -extract 'DG_ORA.259'

找到其應的asm 檔案號

透過推算確定多數的檔案號與資料檔案的對應

有一些不能確定

可能透過dump 確認其檔案號

 alter system dump datafile '/extracted file' block 0;

透過其生成的trace 檔案可以確認所有的資料檔案

重新構建庫, spifle redo control 等

完成之後可mount .重新命名資料檔案

alter database  rename file '+DG_ORA/mos5200/datafile/system.259.776792687'  to '/bak6/DG_ORA/DG_ORA_259.f';
alter database  rename file '+DG_ORA/mos5200/datafile/sysaux.260.776792689' to '/bak6/DG_ORA/DG_ORA_260.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs1.261.776792691'  to '/bak6/DG_ORA/DG_ORA_261.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs2.263.776792695'  to '/bak6/DG_ORA/DG_ORA_263.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs3.264.776792697'  to '/bak6/DG_ORA/DG_ORA_264.f';
alter database  rename file '+DG_ORA/mos5200/datafile/users.265.776792697'  to '/bak6/DG_ORA/DG_ORA_265.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs1.276.776796905'  to '/bak6/DG_ORA/DG_ORA_276.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs1.277.776796911'  to '/bak6/DG_ORA/DG_ORA_277.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs2.278.776796915'  to '/bak6/DG_ORA/DG_ORA_278.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs2.279.776796919'  to '/bak6/DG_ORA/DG_ORA_279.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs3.280.776796925'  to '/bak6/DG_ORA/DG_ORA_280.f';
alter database  rename file '+DG_ORA/mos5200/datafile/undotbs3.281.776796929'  to '/bak6/DG_ORA/DG_ORA_281.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db0.dbf'  to '/bak7/DG_ORA/DG_ORA_282.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db1.dbf'  to '/bak7/DG_ORA/DG_ORA_283.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db2.dbf'  to '/bak7/DG_ORA/DG_ORA_284.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db3.dbf'  to '/bak7/DG_ORA/DG_ORA_285.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db4.dbf'  to '/bak7/DG_ORA/DG_ORA_286.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db5.dbf'  to '/bak7/DG_ORA/DG_ORA_287.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db6.dbf'  to '/bak7/DG_ORA/DG_ORA_288.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_ad.dbf'  to '/bak7/DG_ORA/DG_ORA_289.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_hw.dbf'  to '/bak7/DG_ORA/DG_ORA_290.f';
alter database  rename file '+DG_ORA/mos5200/datafile/authority.dbf'  to '/bak7/DG_ORA/DG_ORA_291.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_sum.dbf'  to '/bak4/DG_ORA/DG_ORA_292.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db7.dbf'  to '/bak4/DG_ORA/DG_ORA_293.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db8.dbf'  to '/bak4/DG_ORA/DG_ORA_294.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db9.dbf'  to '/bak4/DG_ORA/DG_ORA_295.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db10.dbf'  to '/bak4/DG_ORA/DG_ORA_296.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db11.dbf'  to '/bak4/DG_ORA/DG_ORA_297.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db12.dbf'  to '/bak4/DG_ORA/DG_ORA_298.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db13.dbf'  to '/bak4/DG_ORA/DG_ORA_299.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db14.dbf'  to '/bak4/DG_ORA/DG_ORA_300.f';
alter database  rename file '+DG_ORA/mos5200/datafile/pm4h_db15.dbf'  to '/bak4/DG_ORA/DG_ORA_301.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs1.584.781357525'  to '/bak6/DG_ORA/DG_ORA_584.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs1.585.781357549'  to '/bak8/DG_ORA/DG_ORA_585.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs2.586.781357553'  to '/bak8/DG_ORA/DG_ORA_586.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs2.587.781357557'  to '/bak8/DG_ORA/DG_ORA_587.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs3.588.781357563'  to '/bak8/DG_ORA/DG_ORA_588.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs3.589.781357567'  to '/bak8/DG_ORA/DG_ORA_589.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db0_0.dbf'  to '/bak7/DG_ORA/DG_ORA_590.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db0_1.dbf'  to '/bak7/DG_ORA/DG_ORA_591.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db0_2.dbf'  to '/bak7/DG_ORA/DG_ORA_592.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db1_0.dbf'  to '/bak7/DG_ORA/DG_ORA_593.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db1_1.dbf'  to '/bak7/DG_ORA/DG_ORA_594.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db1_2.dbf'  to '/bak7/DG_ORA/DG_ORA_595.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db2_0.dbf'  to '/bak7/DG_ORA/DG_ORA_596.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db2_1.dbf'  to '/bak7/DG_ORA/DG_ORA_597.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db2_2.dbf'  to '/bak7/DG_ORA/DG_ORA_598.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db3_0.dbf'  to '/bak7/DG_ORA/DG_ORA_599.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db3_1.dbf'  to '/bak7/DG_ORA/DG_ORA_600.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db3_2.dbf'  to '/bak4/DG_ORA/DG_ORA_601.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db4_0.dbf'  to '/bak4/DG_ORA/DG_ORA_602.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db4_1.dbf'  to '/bak4/DG_ORA/DG_ORA_603.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db4_2.dbf'  to '/bak4/DG_ORA/DG_ORA_604.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db5_0.dbf'  to '/bak4/DG_ORA/DG_ORA_605.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db5_1.dbf'  to '/bak4/DG_ORA/DG_ORA_606.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db5_2.dbf'  to '/bak4/DG_ORA/DG_ORA_607.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db6_0.dbf'  to '/bak4/DG_ORA/DG_ORA_608.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db6_1.dbf'  to '/bak4/DG_ORA/DG_ORA_609.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db6_2.dbf'  to '/bak4/DG_ORA/DG_ORA_610.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db7_0.dbf'  to '/bak7/DG_ORA/DG_ORA_611.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db7_1.dbf'  to '/bak7/DG_ORA/DG_ORA_612.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db7_2.dbf'  to '/bak7/DG_ORA/DG_ORA_613.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db8_0.dbf'  to '/bak7/DG_ORA/DG_ORA_614.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db8_1.dbf'  to '/bak7/DG_ORA/DG_ORA_615.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db8_2.dbf'  to '/bak7/DG_ORA/DG_ORA_616.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db9_0.dbf'  to '/bak7/DG_ORA/DG_ORA_617.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db9_1.dbf'  to '/bak7/DG_ORA/DG_ORA_618.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db9_2.dbf'  to '/bak7/DG_ORA/DG_ORA_619.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index_0.dbf'  to '/bak7/DG_ORA/DG_ORA_620.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index_1.dbf'  to '/bak4/DG_ORA/DG_ORA_621.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index_2.dbf'  to '/bak4/DG_ORA/DG_ORA_622.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index0_0.dbf'  to '/bak4/DG_ORA/DG_ORA_623.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index0_1.dbf'  to '/bak4/DG_ORA/DG_ORA_624.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index0_2.dbf'  to '/bak4/DG_ORA/DG_ORA_625.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index1_0.dbf'  to '/bak4/DG_ORA/DG_ORA_626.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index1_1.dbf'  to '/bak4/DG_ORA/DG_ORA_627.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index1_2.dbf'  to '/bak4/DG_ORA/DG_ORA_628.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index2_0.dbf'  to '/bak4/DG_ORA/DG_ORA_629.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index2_1.dbf'  to '/bak4/DG_ORA/DG_ORA_630.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index2_2.dbf'  to '/bak7/DG_ORA/DG_ORA_631.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index3_0.dbf'  to '/bak7/DG_ORA/DG_ORA_632.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index3_1.dbf'  to '/bak7/DG_ORA/DG_ORA_633.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index3_2.dbf'  to '/bak7/DG_ORA/DG_ORA_634.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index4_0.dbf'  to '/bak7/DG_ORA/DG_ORA_635.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index4_1.dbf'  to '/bak7/DG_ORA/DG_ORA_636.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index4_2.dbf'  to '/bak7/DG_ORA/DG_ORA_637.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index5_0.dbf'  to '/bak7/DG_ORA/DG_ORA_638.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index5_1.dbf'  to '/bak7/DG_ORA/DG_ORA_639.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index5_2.dbf'  to '/bak7/DG_ORA/DG_ORA_640.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index6_0.dbf'  to '/bak4/DG_ORA/DG_ORA_641.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index6_1.dbf'  to '/bak4/DG_ORA/DG_ORA_642.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index6_2.dbf'  to '/bak4/DG_ORA/DG_ORA_643.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index7_0.dbf'  to '/bak4/DG_ORA/DG_ORA_644.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index7_1.dbf'  to '/bak4/DG_ORA/DG_ORA_645.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index7_2.dbf'  to '/bak4/DG_ORA/DG_ORA_646.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index8_0.dbf'  to '/bak4/DG_ORA/DG_ORA_647.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index8_1.dbf'  to '/bak4/DG_ORA/DG_ORA_648.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index8_2.dbf'  to '/bak4/DG_ORA/DG_ORA_649.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index9_0.dbf'  to '/bak4/DG_ORA/DG_ORA_650.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index9_1.dbf'  to '/bak4/DG_ORA/DG_ORA_651.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db_index9_2.dbf'  to '/bak4/DG_ORA/DG_ORA_652.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs1.653.784295599'  to '/bak8/DG_ORA/DG_ORA_653.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs2.654.784295695'  to '/bak8/DG_ORA/DG_ORA_654.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db71.dbf'  to '/bak4/DG_ORA/DG_ORA_655.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db72.dbf'  to '/bak4/DG_ORA/DG_ORA_656.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db73.dbf'  to '/bak4/DG_ORA/DG_ORA_657.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db74.dbf'  to '/bak4/DG_ORA/DG_ORA_658.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db75.dbf'  to '/bak4/DG_ORA/DG_ORA_659.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db76.dbf'  to '/bak4/DG_ORA/DG_ORA_660.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db77.dbf'  to '/bak4/DG_ORA/DG_ORA_661.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db78.dbf'  to '/bak4/DG_ORA/DG_ORA_662.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db79.dbf'  to '/bak4/DG_ORA/DG_ORA_663.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db80.dbf'  to '/bak4/DG_ORA/DG_ORA_664.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs1.665.785849759'  to '/bak8/DG_ORA/DG_ORA_665.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs2.666.785849771'  to '/bak8/DG_ORA/DG_ORA_666.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_hw_db.dbf'  to '/bak4/DG_ORA/DG_ORA_667.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_hw_db_index0.dbf'  to '/bak4/DG_ORA/DG_ORA_668.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db81.dbf'  to '/bak4/DG_ORA/DG_ORA_669.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db82.dbf'  to '/bak4/DG_ORA/DG_ORA_670.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db83.dbf'  to '/bak4/DG_ORA/DG_ORA_671.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db84.dbf'  to '/bak4/DG_ORA/DG_ORA_672.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db85.dbf'  to '/bak5/DG_ORA/DG_ORA_673.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db86.dbf'  to '/bak5/DG_ORA/DG_ORA_674.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db87.dbf'  to '/bak5/DG_ORA/DG_ORA_675.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db88.dbf'  to '/bak5/DG_ORA/DG_ORA_676.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db89.dbf'  to '/bak5/DG_ORA/DG_ORA_677.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db90.dbf'  to '/bak5/DG_ORA/DG_ORA_678.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs3.679.787081757'  to '/bak8/DG_ORA/DG_ORA_679.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs3.680.787081779'  to '/bak8/DG_ORA/DG_ORA_680.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db91.dbf'  to '/bak4/DG_ORA/DG_ORA_681.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db92.dbf'  to '/bak4/DG_ORA/DG_ORA_682.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db93.dbf'  to '/bak4/DG_ORA/DG_ORA_683.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db94.dbf'  to '/bak5/DG_ORA/DG_ORA_684.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db95.dbf'  to '/bak5/DG_ORA/DG_ORA_685.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db96.dbf'  to '/bak5/DG_ORA/DG_ORA_686.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db97.dbf'  to '/bak5/DG_ORA/DG_ORA_687.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db98.dbf'  to '/bak5/DG_ORA/DG_ORA_688.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db99.dbf'  to '/bak5/DG_ORA/DG_ORA_689.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db100.dbf'  to '/bak5/DG_ORA/DG_ORA_690.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db101.dbf'  to '/bak5/DG_ORA/DG_ORA_691.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db102.dbf'  to '/bak5/DG_ORA/DG_ORA_692.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db103.dbf'  to '/bak5/DG_ORA/DG_ORA_693.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db104.dbf'  to '/bak5/DG_ORA/DG_ORA_694.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db105.dbf'  to '/bak5/DG_ORA/DG_ORA_695.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs2.696.790804851'  to '/bak8/DG_ORA/DG_ORA_696.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs1.697.790870469'  to '/bak8/DG_ORA/DG_ORA_697.f';
alter database rename file '+DG_ORA/mos5200/datafile/undotbs3.698.790870525'  to '/bak8/DG_ORA/DG_ORA_698.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db16.dbf'  to '/bak7/DG_ORA/DG_ORA_302.f';                                       '
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db17.dbf'  to '/bak7/DG_ORA/DG_ORA_303.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db18.dbf'  to '/bak7/DG_ORA/DG_ORA_304.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db19.dbf'  to '/bak7/DG_ORA/DG_ORA_305.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db20.dbf'  to '/bak7/DG_ORA/DG_ORA_306.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db21.dbf'  to '/bak7/DG_ORA/DG_ORA_307.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db22.dbf'  to '/bak7/DG_ORA/DG_ORA_308.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db23.dbf'  to '/bak7/DG_ORA/DG_ORA_309.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db24.dbf'  to '/bak7/DG_ORA/DG_ORA_310.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db25.dbf'  to '/bak7/DG_ORA/DG_ORA_311.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db26.dbf'  to '/bak7/DG_ORA/DG_ORA_312.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db27.dbf'  to '/bak7/DG_ORA/DG_ORA_313.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db28.dbf'  to '/bak7/DG_ORA/DG_ORA_314.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db29.dbf'  to '/bak7/DG_ORA/DG_ORA_315.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db30.dbf'  to '/bak7/DG_ORA/DG_ORA_316.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db31.dbf'  to '/bak7/DG_ORA/DG_ORA_317.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db32.dbf'  to '/bak7/DG_ORA/DG_ORA_318.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db33.dbf'  to '/bak6/DG_ORA/DG_ORA_319.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db34.dbf'  to '/bak6/DG_ORA/DG_ORA_320.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db35.dbf'  to '/bak6/DG_ORA/DG_ORA_321.f';

alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db36.dbf' to '/bak4/DG_T/DG_ORA_549.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db37.dbf' to '/bak4/DG_T/DG_ORA_550.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db38.dbf' to '/bak4/DG_T/DG_ORA_551.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db39.dbf' to '/bak4/DG_T/DG_ORA_552.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db40.dbf' to '/bak4/DG_T/DG_ORA_553.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db41.dbf' to '/bak4/DG_T/DG_ORA_554.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db42.dbf' to '/bak4/DG_T/DG_ORA_555.f';

alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db43.dbf' to '/bak4/DG_T/DG_ORA_556.f';

alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db44.dbf' to '/bak7/DG_T/DG_ORA_557.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db45.dbf' to '/bak5/DG_T/DG_ORA_558.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db46.dbf' to '/bak5/DG_T/DG_ORA_559.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db47.dbf' to '/bak5/DG_T/DG_ORA_560.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db48.dbf' to '/bak5/DG_T/DG_ORA_561.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db49.dbf' to '/bak5/DG_T/DG_ORA_562.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db50.dbf' to '/bak5/DG_T/DG_ORA_563.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db51.dbf' to '/bak5/DG_T/DG_ORA_564.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db52.dbf' to '/bak5/DG_T/DG_ORA_565.f';
                                                                             
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db53.dbf' to '/bak6/DG_T/DG_ORA_566.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db54.dbf' to '/bak6/DG_T/DG_ORA_567.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db55.dbf' to '/bak6/DG_T/DG_ORA_568.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db56.dbf' to '/bak6/DG_T/DG_ORA_569.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db57.dbf' to '/bak6/DG_T/DG_ORA_570.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db58.dbf' to '/bak6/DG_T/DG_ORA_571.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db59.dbf' to '/bak6/DG_T/DG_ORA_572.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db60.dbf' to '/bak6/DG_T/DG_ORA_573.f';

alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db61.dbf' to '/bak7/DG_T/DG_ORA_574.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db62.dbf' to '/bak7/DG_T/DG_ORA_575.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db63.dbf' to '/bak7/DG_T/DG_ORA_576.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db64.dbf' to '/bak7/DG_T/DG_ORA_577.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db65.dbf' to '/bak7/DG_T/DG_ORA_578.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db66.dbf' to '/bak7/DG_T/DG_ORA_579.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db67.dbf' to '/bak7/DG_T/DG_ORA_580.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db68.dbf' to '/bak7/DG_T/DG_ORA_581.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db69.dbf' to '/bak7/DG_T/DG_ORA_582.f';
alter database rename file '+DG_ORA/mos5200/datafile/pm4h_db70.dbf' to '/bak7/DG_T/DG_ORA_583.f';

.SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 293601280 bytes
Fixed Size 1248624 bytes
Variable Size 121635472 bytes
Database Buffers 167772160 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
ORA-01122: 資料庫檔案 1 驗證失敗
ORA-01110: 資料檔案 1:
'F:\ORACLE\PRODUCT\10.2.0\DB_1\ORADATA\ORCLDW\SYSTEM01.DBF'
ORA-01207: 檔案比控制檔案更新 - 舊的控制檔案
4.SQL> alter database backup controlfile to trace as 'e:\controlfile';
資料庫已更改。
5.SQL> shutdown immediate    如果資料庫是開啟狀態,則關閉
ORA-01109: 資料庫未開啟
已經解除安裝資料庫
6.SQL> startup nomount;
ORACLE 例程已經啟動。
Total System Global Area 105979576 bytes
Fixed Size 454328 bytes
Variable Size 79691776 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes


7.Editplus之類的編輯器開啟在第4步生成的e:\controlfile'檔案;
其實在這個檔案中的已經告訴你咋樣恢復你的資料庫了,找到STARTUP NOMOUNT字樣(有好幾處),然後下面可以看到類似語句,這個檔案有好幾個類似的生成控制檔案語句,主要針對不同的環境執行不同的語句,象我的資料庫沒有做任何備份,也不是在歸檔模式,就執行這句(刪除其中的註釋行,刪除不需要的資料檔案,中間不要有任何空行; 碰到錯誤執行SQL> shutdown abort ;SQL> startup nomount; )
SQL>

CREATE CONTROLFILE REUSE DATABASE "ZFXFZB" RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 50
    MAXLOGMEMBERS 5
    MAXDATAFILES 100
    MAXINSTANCES 1
    MAXLOGHISTORY 680
LOGFILE 
  ....................................

..........................................

.............................................
CHARACTER SET ZHS16GBK
;

執行上面這段語句,這個語句重建控制檔案,然後你可以看著e:\controlfile'檔案完成下面的恢復工作了,
8.SQL>RECOVER DATABASE    (恢復指定表空間、資料檔案或整個資料庫) ; 即使出現錯誤也可以正常使用。

    SQL>ALTER DATABASE OPEN resetlogs;      ; 即使出現錯誤也可以正常使用。
9.SQL>ALTER DATABASE OPEN;     開啟資料庫 ; 即使出現錯誤也可以正常使用。

 

 

 

 

 

 

 

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

相關文章