ORA-01102: cannot mount database in EXCLUSIVE mode 的解決辦法

dayong2015發表於2014-09-01
在RAC 環境多節點資料庫,只能啟動一個節點上的資料庫,當啟動另一節點時,報ORA-01102錯誤,如下:
SQL> startup
ORACLE instance started.

Total System Global Area  536870912 bytes
Fixed Size                  2022144 bytes
Variable Size             176162048 bytes
Database Buffers          356515840 bytes
Redo Buffers                2170880 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
去網上檢視資料,發現很多網友都是刪除$ORACLE_HOME/dbs/ 下面的一些檔案,我按照他們的說法,並沒有實現預期的結果。
經過不斷摸索實驗,終於找到了解決辦法,如下:
1)我檢視alter日誌,提示如下錯誤:
Sun Aug 31 22:09:26 2014
Error: can not register my instance state - -1
Sun Aug 31 22:09:27 2014
ALTER DATABASE   MOUNT
Sun Aug 31 22:09:37 2014
ORA-1102 signalled during: ALTER DATABASE   MOUNT...
2)當我輪番開啟一個資料庫例項的時候,檢視引數cluster_database發現為flase,記得之前設定了此引數,感覺可能是此引數引起的,我嘗試著在一個節點上將此引數設定為true,然後重啟該節點,如下:
SQL> show parameter cluster_database;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cluster_database                     boolean     FALSE
cluster_database_instances           integer     1
SQL> alter system set cluster_database=true scope=spfile;         --兩個節點都做修改
System altered.
SQL> shutdown immediate
3)驗證是否能在兩個節點上同時開啟資料庫,結果是可以的,如下:
SQL> select instance_name,status from gv$instance;

INSTANCE_NAME    STATUS
---------------- ------------
HHPEN11          OPEN
HHPEN12          OPEN
SQL> show parameter cluster_database;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cluster_database                     boolean     TRUE
cluster_database_instances           integer     2
總結:對於多例項資料庫,cluster_database引數一定要設定為true,如下是參考ORACLE官方文件

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

相關文章