您好,登錄后才能下訂單哦!
昨天,一同事咨詢,他給rac集群的一個節(jié)點打補丁,重啟之后數(shù)據(jù)庫無法啟動,乍看情況像是磁盤組無法掛載報錯:ORA17503,仔細排查發(fā)現(xiàn)是db_files參數(shù)出現(xiàn)變更導(dǎo)致數(shù)據(jù)庫啟動報錯ORA01174而無法啟動。
1、問題描述
oracle rac 11.2.0.4 打補丁后重啟,數(shù)據(jù)庫實例無法啟動,啟動報錯data磁盤組沒有掛載如下圖所示:
2、問題分析
集群節(jié)點racdb1的grid執(zhí)行crsctl stat res -t -init ,檢查集群資源進程狀態(tài),發(fā)現(xiàn)正常:
集群節(jié)點racdb1的grid執(zhí)行crsctl stat res -t ,檢查集群資源狀態(tài),發(fā)現(xiàn)racdb1數(shù)據(jù)庫實例未掛載:
查看節(jié)點racdb1實例的啟動狀態(tài)為started:
oracle用戶sys登陸數(shù)據(jù)庫執(zhí)行alter database mount報錯ORA000205:
檢查節(jié)點racdb1實例的告警日志,告警日志提示與1中提到的報錯一致:磁盤組data未掛載
節(jié)點racdb1的grid用戶登錄asm管理控制臺,檢查磁盤組狀態(tài),發(fā)現(xiàn)data磁盤組狀態(tài)正常:
節(jié)點racdb1的grid用戶在asm控制臺檢查控制文件,發(fā)現(xiàn)能夠看到控制文件:
到此可以排除ASM磁盤組未掛載導(dǎo)致racdb1實例無法mount的。
節(jié)點racdb1的oracle用戶首先執(zhí)行shutdown abort關(guān)閉當前實例:
節(jié)點racdb1的grid用戶使用srvctl工具啟動實例報錯ORA01174:
到此,節(jié)點racdb1實例racdb1無法啟動原因定位到:可能是數(shù)據(jù)庫打補丁,補丁集修改了racdb1實例的數(shù)據(jù)庫參數(shù)DB_FILES參數(shù),數(shù)據(jù)庫重啟后集群檢查發(fā)現(xiàn)2個節(jié)點實例的DB_FILES參數(shù)不一致導(dǎo)致節(jié)點racdb1實例racdb1無法啟動。
3、問題處理
節(jié)點racdb1的oracle用戶登錄數(shù)據(jù)庫,將實例關(guān)閉,然后啟動到nomount狀態(tài):
節(jié)點racdb1實例racdb1修改DB_FILES參數(shù)為500:
因為DB_FILES為數(shù)據(jù)庫靜態(tài)參數(shù)需要重啟,關(guān)閉節(jié)點racdb1實例racdb1后,將數(shù)據(jù)庫啟動到open狀態(tài):
后記:事后檢查2個節(jié)點的告警日志,除了節(jié)點racdb1的告警日志,最后手工修改的DB_FILES參數(shù)將其設(shè)置為500,
未發(fā)現(xiàn)其他人為手工命令將其修改為200,從而確定是打補丁引起的。
到此問題解決!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。