【UP_ORACLE】如何给Oracle DG打补丁(二)备库安装补丁步骤

来源:这里教程网 时间:2026-03-03 17:06:55 作者:

说明

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

 

相关推荐