Oracle RMAN 升级

1. RMAN 11.2.0.3 升级11.2.0.4

数据库是Oracle 10.2.0.1 双节点RAC,使用10.2.0.4安装包p6810189_10204_Linux-x86-64.zip来升级集群软件,再升级数据库软件。
完成以上操作后开始升级数据库遇到

ORA-01092: ORACLE instance terminated. Disconnection forced

查看alert报警日志发现ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE这句话,提示我需要独占模式。所谓独占模式就将spfile中CLUSTER_DATABASE参数从true改为false,暂时变成单实例就满足了独占的要求。

  1. startup upgrade报错
SQL> startup upgrade
ORACLE instance started.
Total System Global Area  276824064 bytes
Fixed Size                  2083304 bytes
Variable Size              92276248 bytes
Database Buffers          176160768 bytes
Redo Buffers                6303744 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced
  1. alert日志报错信息
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Tue Jan 13 04:28:16 2015
SMON: enabling cache recovery
Tue Jan 13 04:28:16 2015
Successfully onlined Undo Tablespace 1.
Tue Jan 13 04:28:16 2015
SMON: enabling tx recovery
Tue Jan 13 04:28:16 2015
Database Characterset is ZHS16GBK
Updating 10.2.0.1.0 NLS parameters in sys.props$
-- adding 10.2.0.4.0 NLS parameters.
Tue Jan 13 04:28:17 2015
Errors in file /u01/app/oracle/admin/snow/udump/snow1_ora_74528.trc:
ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE
Error 39701 happened during db open, shutting down database
USER: terminating instance due to error 39701
Instance terminated by USER, pid = 74528
ORA-1092 signalled during: ALTER DATABASE OPEN MIGRATE…
  1. 修改CLUSTER_DATABASE参数为false
SQL> STARTUP NOMOUNT
SQL> ALTER SYSTEM SET CLUSTER_DATABASE=FALSE scope=spfile ;
  1. 重启实例使参数生效
SQL> SHUTDOWN IMMEDIATE
  1. 启动实例为升级模式
SQL> STARTUP UPGRADE
SQL>@?/rdbms/admin/catupgrd.sql
  1. 重启实例使其生效
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
  1. 编译无效对象
SQL> @?/rdbms/admin/utlrp.sql
  1. 解除独占模式,恢复结群模式
SQL> alter system set cluster_database=true scope=spfile;
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP