您好,登錄后才能下訂單哦!
問題描述:
在RAC環境中,想開啟歸檔日志,其中使用
SQL> alter system
set
cluster_database=
false
scope=spfile;-->把集群修改為單實例
修改好后主節點,恢復集群雙節點
SQL> alter system
set
cluster_database=
true
scope=spfile;-->把集群修改為雙實例
當前數據庫主節點已經open狀態,查詢狀態是open
備節點已是shutdown狀態,啟動當前節點時報:
ORA-01102: cannot mount database in EXCLUSIVE mode
經從網上查閱信息,可能是如下,我把相關解決思路copy過來大家可以參考
分析原因:
一、在HA系統中,已經有其他節點啟動了實例,將雙機共享的資源(如磁盤陣列上的裸設備、集群沒有正確開啟)占用了;
二、說明oracle被異常關閉時,有資源沒有被釋放,一般有以下幾種可能,
1、 Oracle的共享內存段或信號量沒有被釋放;
2、 Oracle的后臺進程(如SMON、PMON、DBWn等)沒有被關閉;
3、 用于鎖內存的文件lk<sid>和sgadef<sid>.dbf文件沒有被刪除。
解決思路:
當發生1102錯誤時,可以按照以下流程檢查、排錯:
如果是HA系統,檢查其他節點是否已經啟動實例檢查Oracle進程是否存在,如果存在則殺掉進程檢查信號量是否存在,如果存在,則清除信號量檢查共享內存段是否存在,如果存在,則清除共享內存段檢查鎖內存文件lk<sid>和sgadef<sid>.dbf是否存在,如果存在,則刪除。
具體做法:
首先,雖然我們的系統是HA系統,但是備節點的實例始終處在關閉狀態,這點通過在備節點上查數據庫狀態可以證實。
其次、是因系統是修改過集群狀態的,是否在修改后沒有生效,當時就是查詢當前集群狀態
SQL> show parameter cluster
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cluster_database boolean fales
cluster_database_instances integer 2
cluster_interconnects string
這里可能大概判斷出來啥問題影響,可能是當前修改參數后沒有生效,需要重新修改生效,就是第一種情況
把數據庫重啟支mount狀態
SQL> alter system
set
cluster_database=
true
scope=spfile;
把數據庫修改成open狀態,再去嘗試備節點是否可以正常啟動成功,結果發現啟動成功
在修改RAC環境參數后最好再確認一下是否修改成功主
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。