作者:admin 日期:2023-09-06 瀏覽: 次
超融合硬件損壞導(dǎo)致Oracle RAC異?;謴?fù)實(shí)錄
墨墨導(dǎo)讀:一套Oracle RAC環(huán)境運(yùn)行在HW超融合環(huán)境中,由于硬件問題導(dǎo)致數(shù)據(jù)庫(kù)crash,期間出現(xiàn)了不少數(shù)據(jù)壞塊,本文詳述整個(gè)恢復(fù)過程,希望對(duì)大家有幫助。
前幾天某客戶遇到一個(gè)棘手問題:其一套Oracle RAC環(huán)境運(yùn)行在HW超融合環(huán)境中,由于硬件問題導(dǎo)致數(shù)據(jù)庫(kù)crash,期間出現(xiàn)了不少數(shù)據(jù)壞塊,不過還好客戶有RMAN物理備份,因此客戶提前進(jìn)行了全庫(kù)Restore。
首先我們來看下相關(guān)日志信息:
上述類似的大量壞塊信息,最終導(dǎo)致數(shù)據(jù)庫(kù)掛掉。
我們可以看到客戶這里asm diskgroup為normal冗余;當(dāng)primary extent數(shù)據(jù)有問題時(shí),Oracle會(huì)嘗試從mirror extent去獲取;如果mirror extent是正常的,那么Oracle會(huì)自動(dòng)進(jìn)行修復(fù),否則會(huì)導(dǎo)致數(shù)據(jù)丟失,嚴(yán)重的話會(huì)導(dǎo)致數(shù)據(jù)庫(kù)宕機(jī)。
因?yàn)椴糠治募枰橘|(zhì)恢復(fù)(因?yàn)閜rimary和mirror 數(shù)據(jù)都異常),而數(shù)據(jù)庫(kù)強(qiáng)行終止了實(shí)例。
數(shù)據(jù)庫(kù)實(shí)例重啟后則開始出現(xiàn)大量錯(cuò)誤:
不難看出數(shù)據(jù)庫(kù)控制文件和system都出現(xiàn)了異常,這也難怪?jǐn)?shù)據(jù)庫(kù)無法正常打開。
期間還出現(xiàn)了ora-00600 [4193]等常見錯(cuò)誤:
對(duì)于此次恢復(fù)case總體來講比較簡(jiǎn)單,這里提供一下處理思路:
首先利用客戶的歸檔和Redo(Redo log客戶已copy到了本地進(jìn)行備份),進(jìn)行正常的recover database using backup controlfile until cancel操作;
由于恢復(fù)過程中出現(xiàn)了ora-00600 [3020]錯(cuò)誤,因此需要通過recover database allow xx corruption的方式進(jìn)行;
完成恢復(fù)之后嘗試打開數(shù)據(jù)庫(kù);

打開數(shù)據(jù)庫(kù)時(shí)仍然提示ora-01113和ora-01110錯(cuò)誤,即system文件還需要進(jìn)行恢復(fù);這種情況下只能先強(qiáng)制拉庫(kù);通過加入*._allow_resetlogs_corruption=TRUE *._allow_error_simulation=true 等隱含參數(shù)即可;
若上述參數(shù)后仍然提示undo 存在壞塊,由于該數(shù)據(jù)庫(kù)版本在報(bào)錯(cuò)時(shí)不會(huì)直接提示具體是哪個(gè)回滾段有問題,在alter database open resetlogs之前通過10046 event定位error cursor,找到回滾段名稱即可;
使用_corrupted_rollback_segments參數(shù)屏蔽回滾段;
open resetlogs數(shù)據(jù)庫(kù)成功;
最后就是重建undo以及處理相關(guān)壞塊等善后工作。
恢復(fù)完成之后,由于客戶擔(dān)心HW超融合環(huán)境再次出現(xiàn)故障因此進(jìn)行了全庫(kù)備份并進(jìn)行數(shù)據(jù)遷移到新平臺(tái),到這里這個(gè)case告一段落。
再次叮囑大家,注意數(shù)據(jù)庫(kù)備份、注意數(shù)據(jù)容災(zāi)環(huán)境建設(shè)!
推薦閱讀:144頁(yè)!分享珍藏已久的數(shù)據(jù)庫(kù)技術(shù)年刊
數(shù)據(jù)和云
ID:OraNews
如有收獲,請(qǐng)劃至底部,點(diǎn)擊“在看”,謝謝!
點(diǎn)擊下圖查看更多 ↓
云和恩墨大講堂 | 一個(gè)分享交流的地方
長(zhǎng)按,識(shí)別二維碼,加入萬(wàn)人交流社群
請(qǐng)備注:云和恩墨大講堂 點(diǎn)個(gè)“在看”