//
you're reading...
Oracle Database Toubleshooting

ORA-01102 – cannot mount database in EXCLUSIVE mode

Set up an Oracle Database on ODA today for testing, but got an error as below

[oracle@testodadb02 dbhome_1]$ srvctl start instance -d testdb -i testdb2
PRCR-1013 : Failed to start resource ora.testdb.db
PRCR-1064 : Failed to start resource ora.testdb.db on node testodadb02
CRS-5017: The resource action "ora.testdb.db start" encountered the following error:
ORA-01102: cannot mount database in EXCLUSIVE mode
. For details refer to "(:CLSN00107:)" in "/u01/app/grid/diag/crs/testodadb02/crs/trace/crsd_oraagent_oracle.trc".

CRS-2674: Start of 'ora.pms.db' on 'testodadb02' failed

Well, login to sqlplus to start it manually.

SQL> startup
ORA-01102: cannot mount database in EXCLUSIVE mode

Ennnnnn, back to node1 testodadb01, the instance 1 startup successfully

[oracle@testodadb01 dbs]$ srvctl status database -d testdb
Instance testdb1 is not running on node testodadb01
Instance testdb2 is not running on node testodadb02

[oracle@testodadb01 dbs]$ srvctl start instance -d testdb -i testdb1

[oracle@testodadb01 dbs]$ srvctl start instance -d testdb -i testdb2

PRCR-1013 : Failed to start resource ora.testdb.db
PRCR-1064 : Failed to start resource ora.testdb.db on node testodadb02
CRS-5017: The resource action "ora.testdb.db start" encountered the following error:
ORA-01102: cannot mount database in EXCLUSIVE mode
. For details refer to "(:CLSN00107:)" in "/u01/app/grid/diag/crs/testodadb02/crs/trace/crsd_oraagent_oracle.trc".

CRS-2674: Start of 'ora.pms.db' on 'testodadb02' failed

[oracle@testodadb01 dbs]$ srvctl status database -d
Instance testdb1 is running on node testodadb01
Instance testdb2 is not running on node testodadb02

After I read the trace file, I realized that the database is not in cluster mode:

SQL> show parameter cluster;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cluster_database                     boolean     FALSE
cluster_database_instances           integer     1
cluster_interconnects                string

Okey Dokey, let’s fix it.

SQL> alter system set cluster_database=true scope=spfile;

System altered.

SQL> alter system set cluster_database_instances=2 scope=spfile;

System altered.
[oracle@testodadb01 dbhome_1]$ srvctl stop database -d testdb

[oracle@testodadb01 dbhome_1]$ srvctl start database -d testdb

[oracle@testodadb01 dbhome_1]$ srvctl status database -d testdb
Instance testdb1 is running on node testodadb01
Instance testdb2 is running on node testodadb02
Advertisements

About daviewning

I am an Oracle DBA

Discussion

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: