1 说明

近期Oracle在MOS上对未来2019年可能出现的SCN异常增大对DBLINK的影响做了说明,可能受到影响的数据库需要打补丁或者升级数据库才行。

更为详细的信息,请参考MOS文档和一些网上的说明:

  1. ​http://mp.weixin.qq.com/s/VnYvoM-tAVbnXvv1b0xCMg​
  2. Recommended patches and actions for Oracle databases versions 12.1.0.1, 11.2.0.3 and earlier – before June 2019 (文档 ID 2361478.1)
  3. Mandatory Patching Requirement for DatabaseVersions 11.2.0.3 or Earlier, Using DB Links (文档 ID2335265.1)

本文针对Linux的11.2.0.3版本的Oracle进行打补丁。

补丁号:Patch 17540582,当然也可以往上打超集补丁:

  • 18031683 DATABASE PATCH SET UPDATE 11.2.0.3.10 补丁程序
  • 20760997 DATABASE PATCH SET UPDATE 11.2.0.3.15 (INCLUDES CPUJUL2015) 补丁程序
    相关补丁到MOS上下载即可,或者去百度云上下载也可以:

链接:​​https://pan.baidu.com/s/1LG6xWnb7vxfZpcz_vxYbDQ​​ 密码:nm52

2 打补丁

步骤其实非常简单,看README就可以搞定了,下面简单介绍一下步骤。我们一次到位直接到11.2.0.3的最后一个补丁20760997:11.2.0.3.15

2.1 解压补丁压缩包

[root@cndba software]# unzip p20760997_112030_Linux-x86-64.zip

2.2 检查是否有冲突

[oracle@cndba ~]$ cd /software/20760997/
[oracle@cndba 20760997]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Invoking OPatch 11.2.0.1.7
Oracle Interim Patch Installer version 11.2.0.1.7
Copyright (c) 2011, Oracle Corporation. All rights reserved.

PREREQ session
Oracle Home : /u01/app/oracle/product/11.2.0/db_1
Central Inventory : /u01/app/oraInventory
from : /etc/oraInst.loc
OPatch version : 11.2.0.1.7
OUI version : 11.2.0.3.0
Log file location : /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2018-03-20_15-45-40PM.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" not executed
Unable to create Patch Object.
Exception occured : PatchObject constructor: Input file "/software/20760997/etc/config/actions" or "/software/20760997/etc/config/inventory" does not exist.
OPatch succeeded.

2.3 更新Opatch【可选】

Opatch版本需要11.2.0.3.0及以上。

下载地址:链接:​​https://pan.baidu.com/s/1GGPvoXRGYcOoA2B4sfiJ7Q​​ 密码:t1bi

–解压新的Opatch

[oracle@cndba software]$ unzip p6880880_112000_Linux-x86-64.zip

–备份之前的Opatch文件夹

[root@cndba ~]# mv /u01/app/oracle/product/11.2.0/db_1/OPatch/ /home/oracle/

–将新的Opatch文件复制到ORACLE_HOME下

[oracle@cndba software]$ mv OPatch/ /u01/app/oracle/product/11.2.0/db_1/

–验证

[oracle@cndba software]$ /u01/app/oracle/product/11.2.0/db_1/OPatch/opatch version

OPatch Version: 11.2.0.3.17
OPatch succeeded.

2.4 安装补丁

注意:关闭数据库,监听等。

[oracle@cndba 20760997]$ $ORACLE_HOME/OPatch/opatch apply

至此就完成了打补丁工作。