怎么允许宏(excel如何允许宏)
571
2022-05-30
一、前言
随着Oracle ADG技术的逐渐成熟,大多数数据库环境都使用ADG作为灾备和报表数据库,可以说是标配。
那么如果主数据库由于BUG或者维护,需要更新补丁,该如何去操作呢?
**本文参考MOS文档:How do you apply a Patchset,PSU or CPU in a Data Guard Physical Standby configuration (Doc ID 278641.1) **
环境准备:
Notes:ADG环境已提前搭建好,并已配置好 DG Broker。
二、流程
主要步骤如下:
1.主库停止日志传输。 2.关闭备库,备库应用补丁程序,备库启动mount,不开启日志应用。 3.关闭主库,主库应用补丁程序。 4.开启主库,开启日志传输。 5.备库开启日志应用。 6.执行检查,确保补丁安装成功。
详细操作步骤如下:
1.主库停止日志传输。
##如果已配置DG Broker dgmgrl sys/oracle@orcl edit database orcl set state='LOG-TRANSPORT-OFF'; ##未配置DG Broker SQL> alter system set log_archive_dest_state_2=defer scope=both sid='*';
2.关闭备库,备库应用补丁程序,备库启动mount,不开启日志应用。
a.关闭备库实例,监听
##Non-rac shutdown immediate lsnrctl stop ##rac srvctl stop database -d orcl srvctl stop listener srvctl stop scan_listner
b.替换OPatch
cd /u01/app/oracle/product/11.2.0/db/ mv OPatch/ OPatch0421 unzip -q /soft/p6880880_112000_Linux-x86-64.zip opatch version
c.应用补丁程序(根据Readme操作)
unzip -q p31537677_112040_Linux-x86-64.zip cd 31537677 opatch prereq CheckConflictAgainstOHWithDetail -ph ./ opatch apply
如果opatch apply遇到warning,请参照:****11204打PSU时Warning:ins_emagent.mk `nmosudo`
d.开启备库到mount
##已配置DG Broker,需要设置APPLY-OFF防止自动开启日志应用 edit database orcl_stby set state='APPLY-OFF'; ##Non-rac startup mount lsnrctl start ##rac srvctl start database -d orcl -o mount srvctl start listener srvctl start scan_listener
3.关闭主库,主库应用补丁程序。
可参照备库补丁应用过程,此处略过。
4.开启主库,开启日志传输。
a.开启主库,开启监听
b.执行PSU升级脚本
_关于catbundle脚本可参考:Introduction To Oracle Database catbundle.sql (Doc ID 605795.1) _
--执行catbundle脚本 cd $ORACLE_HOME/rdbms/admin sqlplus / as sysdba @catbundle.sql psu apply --编译无效对象 @utlrp.sql --执行dbms_java_dev脚本 @dbmsjdev.sql exec dbms_java_dev.disable
c.开启日志传输
edit database orcl set state='ONLINE';
5.备库开启日志应用。
这将使通过catupgrade/catbundle/catcpu脚本对数据库的改变被应用到备库。
##已配置DG Broker,打开apply-on edit database orcl_stby set state='ONLINE'; ##备库开启到read only,开启ADG alter database open;
6.执行检查,确保补丁安装成功。
主库:
opatch lspatches select action_time,action,version,id,bundle_series,comments from dba_registry_history;
备库:
opatch lspatches select action_time,action,version,id,bundle_series,comments from dba_registry_history;
检查ADG同步情况:
##已配置DG Broker show database orcl show database orcl_stby ##未配置DG Broker select process,group#,thread#,sequence# from v$managed_standby; select group#,thread#,sequence#,bytes/1024/1024,archived,status from v$standby_log;
主库删除test表一个记录:
备库查看是否同步:
备库已实时删除,ADG正常同步。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。