Oracle12C升级术语

ORACLE 12C之后,补丁RU,RUR,DBRU说明

ORACLE PSU,RU,RUR,DBRU补丁(11G、12C、18C、19C、20C)

ORACLE 12C之后,RU,RUR,DBRU说明:

这里要注意RU(Release Update)和RUR(Release Update Revisions)的区别:
1.RU是主动,高度测试,捆绑了许多重要修复,能够使客户避免许多已知问题。
2.RUR包含对RU的安全性和回退修复,将RU的生命周期延长两个季度。每个RUR只针对特定的RU。
从2017年7月开始,Oracle 对数据库和GI(Grid Infrastructure) 12.2及之后版本的主动修补程序进行了更改。
传统的“Patchset Update”和“Database Proactive Bundle Patch”对于12.2数据库将不再发布。
将采用新的发布方式RU (Release Updates)和RUR(Release Update Revisions)。

第一位数字是Oracle数据库的主版本号,比如Oracle 19c,18c,12c。 从Oracle 18c开始,第一个数字表示Oracle数据库版本发布的最初的年份,比如2018年是Oracle 18c(18.0.0.0.0)的最初发布年份。
第二位数字是Oracle RU(Release Update)的发布季度。比如19.3。
第三位数字是Oracle RUR(release updates revision)的发布季度,比如19.2.1,19.2.2。

需要注意的是,DBRU就是以前的PSU,Oracle Database 19 Release 19.3.0.0.190416DBRU

数据库运行环境:CentOS7

oralce版本:12.2.0.0.1

一、补丁准备:

到oracle官网下载RU和OJM的补丁。以及最新版的OPatch

OPacth地址:https://updates.oracle.com/download/6880880.html

OPatch一般跟随补丁更新因此如果要安装最新的补丁,一般都需要升级OPatch。具体是否需要升级,需要阅读补丁中的readme.html

RU补丁:安装最新的RU即可,12c版本的RU类似于以前的PSU,是累计补丁。

OJM补丁

二、将OPatch 升级到最新版本

将之前的OPatch备份,然后覆盖即可

三、升级RU补丁 和OJVM,方式相同

出错:

需要安装fuser。

yum install -y psmisc

先检测冲突:

在补丁目录下执行:

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

到补丁解压缩目录下执行:

$ORACLE_HOME/OPatch/opatch apply

出现错误

make: [iextjob] Error 1 (ignored)

可以忽略,不影响升级

如果没有环境变量,可以直接把ORACLE_HOME提替换为目录

四、更新dba_registry_sqlpatch视图信息

sqlplus启动数据库

sqlplus / as sysdba

startup

执行

alter pluggable database all open;如果提示错误可以忽略,数据库能正常启动即可

OPatch目录下执行

./datapatch -verbose

随后用sqlplus登录,执行查看是否成功

select VERSION,STATUS,ACTION_TIME,DESCRIPTION from dba_registry_sqlpatch;

oracle 12c 18c 19c RU(Release Updates)与 RUR(Release Update Revisions)的区别及选择

以前 Oracle的周期是约5年升级一个大版本,在这个大版本上做小的升级(PSU与BP),在12c发布以后,oracle数据库产品的新版本发布改为每年一次。随着版本的变化,oracle的升级也发生了变化。
12.2以后,主要是通过 RU(Release Updates)与 RUR(Release Update Revisions)升级,那么什么是 RU(Release Updates)与 RUR(Release Update Revisions),该怎么选择呢?

怕我的理解有误,还是贴一下官方给出的说明:

为了支持与安全相关的修复以及高优先级的非安全修复,将在每年的1月,4月,7月和10月每个季度发布一个 Release Updates (Updates)。 Oracle的季度发布的Updates包含客户最有可能遇到的错误的修复:

    查询优化器错误修复,在之前版本的PSU以及BP中并不包含的这些修复被加入到Updates中,但是默认是禁用的。
    Updates包含安全相关的补丁。
    Updates会经过 广泛的测试,包括功能测试,压力测试,性能测试以及破坏性测试。
    及时应用Updates可以降低碰到已知问题的可能性。
    Updates在RAC环境下可以使用rolling的方式不停机安装。

除了季度性发布的Updates, Release Update Revisions (Revisions) 也会每个季度发行,包含对Updates的回退修复以及包含最新的安全方面的修复。

    在每个Update发布后的六个月内,会有2个针对这个Update的Revisions 。比如, Release.Update.1 和 Release.Update.2,这里"1" 和 "2"代表的是Revision。

Oracle推荐客户保持应用最新的Updates,这样可以避免很多已知的问题。并且可以避免申请很多小补丁,并显著降低更多的补丁维护的操作。

某些客户可能已达到稳定状态,并希望优先考虑安全更新而不是功能修复。在这种情况下,他们可能选择应用 Revisions。当他们应用 Release.Update.1,他们落后Update的内容3个月。 当他们应用 Revision Release.Update.2,他们落后Update的内容6个月。通过选择延迟3或6个月的新Update的内容,客户可以采取更保守的方法来进行数据库软件维护,但是他们仍有可能会碰到已在最新Update中包含的已知问题。

在Updates和Revisions 之间来回切换是可能的。但是是有限制的,新的patch必须是之前patch的超集。为了避免补丁冲突,客户应该坚持一贯的政策,即在每季维护周期中始终采用相同的Revision级别 (比如 Release.Update.0, Release.Update.1 或者 Release.Update.2)

从12.2.0.1 数据库软件以及更新的版本开始,Update 和 Revision策略取代了之前的 Patchset Update (PSU) 和 Database Bundle Patch (DBBP) 策略。从2017年7月开始,之前的术语'Patchset', 'Patchset Update', 以及"Database Bundle Patch' 不再适用于 12.2.0.2 及更高版本。注意,数据库版本12.1 和11.2 仍然会每季度发布 PSUs 和 BPs。

再贴上一张官方的版本升级时间轴图片。


image.png

我的理解是:
RU(Release Updates)是每一个季度的版本升级。包括:
最新的BUG修复
最新的安全漏洞补丁
最新添加的功能
以19c为例,对应的升级版本升级路线是(19.1.0.0.0->19.2.0.0.0->19.3.0.0.0 ..... )到现在是19.8.0.0.0

RUR是对RU的修订版本,包括:
最新的BUG修复
最新的安全漏洞补丁
这里并没有添加最新的功能。并且只有对应RU版本的修订版。比如,在2020年7月,除了会发布RU(19.8.0.0.0)回会发布上个季度的.1补丁(19.7.1.0)和上上个季度的.2补丁(19.6.2.0)

所以我的理解是:
如果是新安装的数据库,那么推荐安装最新的RU。
如果是对已有数据库的升级,建议还是升级RUR更加稳妥一点,除非有明确需要要使用最新的功能。
最后,RU与RUR是可以相互转换的,判断条件oracle也提供了。

Q14: 客户是否可以在 Updates 和 Revisions 之间来回切换?

A: 是的。   只要客户选择的版本是另一个的累积,那么就可以在 Updates 和 Revisions 之间切换。一个简单的公式就是在相同的年度发布的情况下,把目标以及源库的版本号的后两个部分相加。如果目标版本号的后两个部分相加大于源库版本号的后两个部分相加,那么就可以应用目标版本;否则安装会失败。

例 1:
    源版本 - 18.2.2     <<<<< 第二部分和第三部分的和是 "4"
    目标版本 - 18.5.0     <<<<< 第二部分和第三部分的和是 "5"
    结论: 目标版本 "5" 比源版本 "4" 大,所以可以应用目标版本

例 2:
    源版本 - 18.2.2     <<<<< 第二部分和第三部分的和是 "4"
    目标版本 - 18.3.0     <<<<< 第二部分和第三部分的和是"3"
    结论: 目标版本 "3" 比源版本 "4" 小所以不能安装目标版本,会出错

参考文章:
Release Update介绍以及FAQ (Doc ID 2289879.1)
https://www.sohu.com/a/289232430_505827
https://www.cndba.cn/dave/article/4063

你可能感兴趣的:(Oracle12C升级术语)