DG环境下打补丁

本例中从Oracle 19.3升级到19.17。


基本步骤是,备库先对Oracle Home打补丁,然后再打主库的Oracle Home,接着对主库的database进行升级,然后开启DG,使备库自动同步升级。


  1. 停止DG

DGMGRL> edit database o19 set state='TRANSPORT-OFF';
Succeeded.
DGMGRL> edit database o19dg set state='APPLY-OFF';
Succeeded.

如果因保护模式失败,需要将保护模式改为最高性能:

DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MaxPerformance;
Succeeded.

2. 备库先打补丁,打完启动到mount

shutdown immediate
lsnrctl stop
opatch apply
lsnrctl start
startup mount

3. 然后主库打补丁,打完以限制模式启动(有PDB的话要启动所有PDB)

shutdown immediate
lsnrctl stop
opatch apply
startup restrict

4. 升级数据库

cd $ORACLE_HOME/OPatch
./datapatch -verbose

5. 恢复DG,备库自动同步升级

#在主库上操作
lsnrctl start
alter system register;
alter system disable restricted session;
DGMGRL> edit database o19 set state='TRANSPORT-ON';
Succeeded.
DGMGRL> edit database o19dg set state='APPLY-ON';
Succeeded.
#另外酌情设置保护模式


6. 备库此时可以正常open

7. 确认结果

opatch lsinventory


请使用浏览器的分享功能分享到微信等