说明
1. 本博文指的Oracle DG是物理DG或者物理ADG,并非逻辑DG
2. 测试库主库实例名:testdb,备库实例名:testdg
实验环境
搭建平台:VMware Workstation
OS:RHEL 6.10
Grid&DB:Oracle 11.2.0.4 备库安装补丁步骤1. 禁用主库的redo日志传输注:如果主库是RAC,需要关闭归档,命令是alter database noarchivelog;(1)使用DG Broker关闭日志传输
$ dgmgrl sys/sys DGMGRL> show database verbose testdb Database Name: testdb Role: PRIMARY Intended State: TRANSPORT-ON Instance(s): testdb Properties: ### 省略一部分输出 ### Current Status: SUCCESS
DGMGRL> edit database plb_prm set state='LOG-TRANSPORT-OFF';Succeeded. (2)使用sqlplus关闭日志传输
$ sqlplus / as sysdba SQL> alter system set log_archive_dest_state_N=defer scope=both sid='*';
注:此参数N的范围是1-29,比如log_archive_dest_state_1对应并控制的参数就是log_archive_dest_1,log_archive_dest_state_2对应并控制的参数就是log_archive_dest_2,以此类推 2. 在备库打补丁(1)停备库监听
$ lnsrctl stop
(2)停备库(需要停DB实例和ASM实例)单机ASM:
$ su - root # crsctl stop has
单机非ASM:
$ sqlplus / as sysdba SQL> shu immediate
RAC:
$ su - grid $ srvctl stop listener -n node1 -l listener $ srvctl stop listener -n node2 -l listener $ su - root # crsctl stop cluster -all # crsctl stop has
(3)安装补丁1)更新OPatch 文件夹下载6880880补丁,直接解压替换$ORACLE_HOME/OPatch 2)开始安装补丁
$ cd <补丁目录> $ $ORACLE_HOME/OPatch/opatch apply --该命令仅供参考
注:
在备库中只安装补丁到数据库软件,就不需要运行catupgrd.sql/catbundle.sql脚本,因为这部分会通过重做日志应用到备库。
补丁安装方式需要参照补丁中README来,上面例子的只是打通用普通补丁的命令,仅供参考!
3)检查补丁是否安装成功
$ $ORACLE_HOME/OPatch/opatch lsinventory
4)启动备库监听$ lsnrctl start 5)启动备库单机ASM:
$ su - root # crsctl start has
单机非ASM:
$ sqlplus / as sysdba SQL> startup
RAC:
$ su - grid $ srvctl start listener -n node1 -l listener $ srvctl start listener -n node2 -l listener $ su - root # crsctl start cluster -all
