Whilst trying to change an Oracle 11g2 database to noarchivelog mode I kept getting the error “ORA-01126: database must be mounted exclusive and not open for this operation”.
The word “exclusive” reminded me this was part of a cluster. Here’s the commands I ultimately used …
sql> select log-mode from gv$database; -- to check the modes of all the nodes. c:> srvctl status database -d CLUSTER_NAME -- check nodes are running c:> srvctl stop database -d CLUSTER_NAME -- stop all nodes of the database c:> srvctl status database -d CLUSTER_NAME -- check nodes are stopped sql> startup mount exclusive; -- mount database just on this node sql> alter database noarchivelog; -- change the log-mode sql> select log_mode from gv$database; - check it worked sql> shutdown immediate; -- shutdown this node c:> srvctl start database -d CLUSTER_NAME -- startup all nodes of the database sql> select log_mode from gv$database; -- check modes of all nodes c:> srvctl status database -d CLUSTER_NAME -- check nodes are running
Of-course I used the actual name of the cluster instead of “CLUSTER_NAME” above.