ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE
August 21, 2020 Leave a comment
Problem:
In cluster environment, I was not able to start database in upgrade mode:
SQL> startup upgrade
ORACLE instance started.
Total System Global Area 1996486272 bytes
Fixed Size 8898176 bytes
Variable Size 704643072 bytes
Database Buffers 1275068416 bytes
Redo Buffers 7876608 bytes
Database mounted.
ORA-00603: ORACLE server session terminated by fatal error
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE
The following also did not work:
SQL> startup mount exclusive
ORACLE instance started.
Total System Global Area 1996486272 bytes
Fixed Size 8898176 bytes
Variable Size 704643072 bytes
Database Buffers 1275068416 bytes
Redo Buffers 7876608 bytes
Database mounted.
SQL> alter database open upgrade;
alter database open upgrade
*
ERROR at line 1:
ORA-00603: ORACLE server session terminated by fatal error
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE
Solution:
Change parameter cluster_database
to FALSE, and startup in upgrade mode:
$ sqlplus / as sysdba
SQL> startup nomount;
SQL> alter system set cluster_database=FALSE scope=spfile sid='*';
SQL> shutdown immediate;
SQL> startup upgrade
ORACLE instance started.
Total System Global Area 1996486272 bytes
Fixed Size 8898176 bytes
Variable Size 704643072 bytes
Database Buffers 1275068416 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
After finishing your work, don’t forget to return cluster_database
parameter to TRUE and restart your database:
SQL> alter system set cluster_database=TRUE scope=spfile sid='*';