Oracle 19c DG环境 升级RU 19.3 到19.6
升级RU说明
根据19.6 Patch 的readme 文件,对于物理DG的升级, 先升级备库,再升级主库。 而在打Patch的过程,实例是需要关闭的,也就意味着有停机时间。 并且提供的参考文档:278641.1, 也确实是停机后操作的。
一般对于这种操作,我们需要考虑的是尽可能缩短停机时间。 对于Data Guard 环境,无法做到RAC 环境的滚动升级,所以必然存在一个停机窗口的问题。 一般对于大的升级,向Oracle 11g的大版本升级,执行脚本可能需要40分钟,这个停机窗口是偏长的。
所以对于11g 中的这种情况,我们可以按如下步骤进行:
1.升级备库
2.进行switchover 切换
3.原主库被备库
4.升级新备库。Oracle 18c Data Guard 切换保护模式 和 主备库角色操作手册
https://www.cndba.cn/dave/article/2996
但根据单实例升级19.6 RU的经验,这个时间不长,十来分钟就结束了,所以对于Oracle 19c DG 环境RU的升级,完全没有必要进行switchover 操作。
除了switchover切换需要业务侧的配合之外,还有另一个问题,就是12.2之后升级RU使用的datapatch 工具,该工具必须在实例读写状态下才能进行工作。 而备库是只读的,所以无法执行datapatch工具。
因此,在19c 的Data Guard 环境,我们RU的升级可以直接按照Patch readme中的步骤进行,如下:
1.停备库
2.升级备库(RU)
3.启动备库
4.停主库
5.升级主库(RU+datapatch+utlrp)
6.启动主库
这样,Data Guard 环境的RU 升级就变成了2个单实例的RU升级,升级步骤和之前差不多了。 只需要注意备库只需要升级RU,不需要执行datapatch工具。 修改的SQL 会从主库同步到备库中。
具体操作
2.1 搭建19.3 的Data Guard 环境
这里之前参考之前的博客。 本文不再描述。
Linux 7.7 平台 Oracle 19.3 物理Data Guard 搭建手册
https://www.cndba.cn/dave/article/4067本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!