最近测试了一下在Oracle 10g下面(单实例下面)升级、应用补丁PSU 10.2.0.5.180717,打这个补丁的主要原因是 Oracle 将于 2019年6月启用新的SCN兼容性,并且由于BigSCN的作用,96K每秒的SCN增速,都可能会使得通过DB Link的访问产生SCN过度拉升,所以新的补丁需要被应用。最近(2018年8月份)Oracle 提供了针对 Oracle 10g 最终版本 10.2.0.5 的修正补丁,为低版本用户提供了一个解决方案。更多这方面的相关知识,可以参考这篇文章升级更新:Oracle关于DB Link在2019年升级的10g版本兼容性下面按照官方文档从Patch Pre-Installation Instructions,Patch Installation Instructions,Post Installation Instructions这三个方面来测试、验证一下。

 

 

Patch Pre-Installation Instructions

安装这个补丁对OPatch Utility的版本有要求,要求OPatch 10.2 version 10.2.0.5.0 或之后的版本,否则在应用补丁的过程就会遇到一些错误,后面例子会介绍这个具体错误,以及如何升级OPatch Utility(此处不展开,后面展开)

检查opatch版本

 

不符合要求的版本的例子

#$ORACLE_HOME/OPatch/opatch version

Invoking OPatch 10.2.0.4.9

 

OPatch Version: 10.2.0.4.9

 

OPatch succeeded.

符合要求的版本的例子:

#$ORACLE_HOME/OPatch/opatch version

Invoking OPatch 10.2.0.5.1

 

OPatch Version: 10.2.0.5.1

 

OPatch succeeded.

注意事项:

To install the PSU 10.2.0.5.180717 patch, the Oracle home must have the 10.2.0.5.0 Database installed. Subsequent PSU patches can be installed on Oracle Database 10.2.0.5.0 or any PSU with a lower 5th numeral version than the one being installed.

首先要去meatalink上下载Patch 26493118 也就是 Oracle Database Patch Set Update 10.2.0.5.171017。当然下载这个补丁是需要口令。不过我们下载的是补丁程序26493118: DATABASE PATCH SET UPDATE 10.2.0.5.171017, 因为我去下载的时候,这个补丁程序集已经被取代(Patch 26925212 is a super set of patch 26493118)。

关闭监听、ORACLE实例等

如下所示:

$ lsnrctl stop

 

SQL> shutdown immediate

 

$ emctl status dbconsole

TZ set to PRC

OC4J Configuration issue. /u01/app/oracle/product/10.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_getlnx14uat.esquel.com_SCM2 not found. 

 

如果EM服务是运行状态,就必须关闭

 

$ emctl stop dbconsole

$ unzip p26925212_10205_Linux-x86-64.zip

解压后,我们最好检查一下当前环境是否存在补丁冲突

Determine whether any currently installed one-off patches conflict with the PSU patch as follows:

 

opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./26925212

正常情况:

[oracle@mylnx01 klb]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./26925212/

Invoking OPatch 10.2.0.4.9

 

Oracle Interim Patch Installer version 10.2.0.4.9

Copyright (c) 2009, Oracle Corporation.  All rights reserved.

 

PREREQ session

 

Oracle Home       : /u01/app/oracle/product/10.2.0/db_1

Central Inventory : /u01/app/oracle/oraInventory

   from           : /etc/oraInst.loc

OPatch version    : 10.2.0.4.9

OUI version       : 10.2.0.5.0

OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui

Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2018-11-01_22-35-10PM.log

 

Patch history file: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch_history.txt

 

Invoking prereq "checkconflictagainstohwithdetail"

 

Prereq "checkConflictAgainstOHWithDetail" passed.

冲突情况:

[oracle@mylnx02 tmp]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./26925212/

Invoking OPatch 10.2.0.5.1

 

Oracle Interim Patch Installer version 10.2.0.5.1

Copyright (c) 2010, Oracle Corporation.  All rights reserved.

 

PREREQ session

 

Oracle Home       : /u01/app/oracle/product/10.2.0/db_1

Central Inventory : /u01/app/oracle/oraInventory

   from           : /etc/oraInst.loc

OPatch version    : 10.2.0.5.1

OUI version       : 10.2.0.5.0

OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui

Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2018-11-04_14-44-35PM.log

 

Patch history file: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch_history.txt

 

Invoking prereq "checkconflictagainstohwithdetail"

 

ZOP-47: The patch(es) has supersets with other patches installed in the Oracle Home (or) among themselves.

 

Prereq "checkConflictAgainstOHWithDetail" failed.

 

Summary of Conflict Analysis:

 

Patches that can be applied now without any conflicts are : 

26925212

 

Following patches are not required, as they are subset of the patches in Oracle Home or subset of the patches in the given list : 

9949948, 7612454

 

Following patches will be rolled back from Oracle Home on application of the patches in the given list : 

9949948, 7612454

 

Conflicts/Supersets for each patch are:

 

Patch : 26925212

 

        Bug Superset of 9949948

        Super set bugs are:

        9949948

 

        Bug Superset of 7612454

        Super set bugs are:

        7612454

 

OPatch succeeded.

卸载冲突补丁:

$ $ORACLE_HOME/OPatch/opatch  rollback -id 9949948

$ $ORACLE_HOME/OPatch/opatch  rollback -id 7612454

Patch Installation Instructions

预演补丁安装的正常情况:

$ORACLE_HOME/OPatch/opatch apply -report

 

预演补丁安装的非正常情况:

[oracle@getlnx01uat 26925212]$ $ORACLE_HOME/OPatch/opatch apply -report

Invoking OPatch 10.2.0.4.9

Oracle Interim Patch Installer version 10.2.0.4.9

Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/app/oracle/product/10.2.0/db_1

Central Inventory : /u01/app/oracle/oraInventory

from           : /etc/oraInst.loc

OPatch version    : 10.2.0.4.9

OUI version       : 10.2.0.5.0

OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui

Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2018-11-01_22-36-06PM.log

Patch history file: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch '26925212' to OH '/u01/app/oracle/product/10.2.0/db_1'

ApplySession failed: ApplySession failed to prepare the system.

Patch 26925212 requires OPatch version 10.2.0.5.0.

The OPatch version being used (10.2.0.4.9) doesn't meet the minimum version required by the patch(es). Please download latest OPatch from My Oracle Support.

System intact, OPatch will not attempt to restore the system

OPatch failed with error code 73

如上所示,这个是因为OPatch的版本低于10.2.0.5.0,所以必须必须先升级 OPatch的版本,可以下载p6880880_1020000_Linux-x86-64.zip安装包,具体步骤如下:

[oracle@mylnx01 tmp]$ unzip p6880880_1020000_Linux-x86-64.zip 

[oracle@mylnx01 tmp]$ cd OPatch/

 

[oracle@mylnx01 OPatch]$ cd $ORACLE_HOME

[oracle@mylnx01 db_1]$ mv OPatch  OPatch.bak

[oracle@mylnx01 db_1]$ 

 

 

[oracle@mylnx01 db_1]$ cp -rf /tmp/OPatch/  ./

[oracle@mylnx01 db_1]$ ls -lrt ./OPatch

total 80

-rw-r--r-- 1 oracle oinstall  2417 Nov  1 23:09 README.txt

drwxr-xr-x 4 oracle oinstall  4096 Nov  1 23:09 opatchprereqs

-rw-r--r-- 1 oracle oinstall  2576 Nov  1 23:09 opatch.pl

-rw-r--r-- 1 oracle oinstall    49 Nov  1 23:09 opatch.ini

-rwxr-xr-x 1 oracle oinstall  8085 Nov  1 23:09 opatch.bat

-r-x--x--- 1 oracle oinstall 13252 Nov  1 23:09 opatch

drwxr-xr-x 4 oracle oinstall  4096 Nov  1 23:09 ocm

drwxr-xr-x 2 oracle oinstall  4096 Nov  1 23:09 jlib

-rw-r--r-- 1 oracle oinstall 23695 Nov  1 23:09 emdpatch.pl

drwxr-xr-x 2 oracle oinstall  4096 Nov  1 23:09 docs

drwxr-xr-x 3 oracle oinstall  4096 Nov  1 23:09 crs

 

[oracle@mylnx01 db_1]$ $ORACLE_HOME/OPatch/opatch version

Invoking OPatch 10.2.0.5.1

 

OPatch Version: 10.2.0.5.1

 

OPatch succeeded.

[oracle@mylnx01 26925212]$ $ORACLE_HOME/OPatch/opatch apply -report

[oracle@mylnx01 26925212]$ $ORACLE_HOME/OPatch/opatch apply

检查补丁安装情况:

$ORACLE_HOME/OPatch/opatch lsinventory

Post Installation Instructions

打完补丁后,启动Oracle实例,然后运行一些脚本,如下所示,也可以参考补丁里面的相关文件README.html

cd $ORACLE_HOME/rdbms/admin

 

 

sqlplus / as sysdba

SQL> STARTUP

 

SQL> @catbundle.sql psu apply

 

SQL> -- Execute the next statement only if this is the first PSU applied for 10.2.0.5 or this is the first PSU applied since 10.2.0.5.3.

 

SQL> @utlrp.sql

 

SQL> QUIT

检查$ORACLE_HOME/cfgtoollogs/catbundle 或 $ORACLE_BASE/cfgtoollogs/catbundle 目录下的日志里面是否有任何错误。

catbundle_PSU_<database SID>_APPLY_<TIMESTAMP>.log

catbundle_PSU_<database SID>_GENERATE_<TIMESTAMP>.log

例如,测试案例当中生成的日志:

/u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/catbundle/catbundle_PSU_SCM2_APPLY_2018Nov04_15_07_27.log

/u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/catbundle/catbundle_PSU_EPPS_GENERATE_2018Nov01_23_23_46.log

Oracle 10g 应用补丁PSU 10.2.0.5.180717的更多相关文章

  1. oracle 11GR2 单机打补丁PSU 11.2.0.4.180717

    上传补丁包,修改权限 su - oracle mdir /tmp/psu mv p6880880_112319_Linux-x86-64.zip /tmp/psu/mv databasepsu1807 ...

  2. 单机 Oracle 11g(11.2.0.4)手动打补丁PSU(11.2.0.4.8)

    环境说明:database : 11.2.0.4 x64os: centos6.7 x64 准备内容:OPatch : p6880880_112000_Linux-x86-64.zipDB PSU : ...

  3. 关于Oracle 10.2.0.5 版本应用SCN补丁14121009相关问题

    环境:OEL 5.7 + Oracle 10.2.0.5 背景:Oracle发布的两篇关于2019年6月份将自动调整高版本数据库的SCN COMPATIBILITY的MOS文章引起了很多客户的恐慌,尤 ...

  4. oracle数据库psu升级(本实验是将10.2.0.3.12升级到10.2.0.3.15)

    psu升级(本实验是将10.2.0.3.12升级到10.2.0.3.15) 一.解压安装包自定义存放路径为/home/oracle/yjb/psu/10.2.0.3.15cd /home/oracle ...

  5. CENTOS 6.4 安装oracle 10g,手工建库及升级到10.2.0.5

    一. 数据库软件安装 参照官方手册 1.安装rpm包 注这里的yum直接用163的yum yum -y install binutils compat-libstdc++-33 compat-libs ...

  6. oracle 10g RAC psu过程

    1 升级crs 至10.2.0.5.2 1) 升级opatch 程序,PSU对opatch的版本有要求,详见readme文件,此步操作共涉及到每个节点的ORACLE_HOME和ORA_CRS_HOME ...

  7. 【opatch打补丁】oracle10.2.0.5.0升级10.2.0.5.9 for linux

    https://wenku.baidu.com/view/c38702b56edb6f1afe001f59.html    这篇文章也不错,可参考 任务:oracle 10.2.0.5.0 打补丁升级 ...

  8. Linux下Oracle 10.2.0.1升级到10.2.0.4总结

    最近部署测试环境时,将测试环境ORACLE数据库从10.2.0.1升级到了10.2.0.4,顺便整理记录一下升级过程. 实验环境: 操作系统:Oracle Linux Server release 5 ...

  9. Oracle Database常用补丁集Patch号及各版本PSU

    Oracle Database常用补丁集Patch号及各版本PSU------------------------------------------------------------------- ...

随机推荐

  1. IOS开发之尺寸

    在移动端或者前端开发中,UI图通常是带标注的,指定某个控件的长宽等属性,一般UI给的是68px,72px这样的样式,但是我们在开发过程中通常又并不是完全按照上面的标注去设置值,有时候需要将这个标注除以 ...

  2. Spark MLlib

    MLlib    数据挖掘与机器学习        数据挖掘体系 数据挖掘:也就是data mining,是一个很宽泛的概念,也是一个新兴学科,旨在如何从海量数据中挖掘出有用的信息来.         ...

  3. JavaScript 正则表达式全面总结

    本文适合有 JavaScript 基础 && 面向搜索引擎书写正则的人群. 正则表达式是用于匹配字符串中字符组合的模式.正则表达式的模式规则是由一个字符序列组成的.包括所有字母和数字在 ...

  4. Python 工厂函数和内建函数

    工厂函数 工厂函数都是类对象, 即当你调用他们时, 创建的其实是一个类实例 例如: str(), list(), tuple()... 内建函数 内建函数通常是python自定义的一些函数, 这些函数 ...

  5. redis 系列20 服务器下

    二. serverCron函数 2.3 更新服务器每秒执行命令次数 serverCron函数中的trackOperationsPerSecond函数会以每100毫秒一次的频率执行,这个函数以抽样计算的 ...

  6. [Python Web]部署完网站需要做的基本后续工作

    简述 今天自己上线了一个简单的 Page,没有什么功能就是一个展示页. 但是,我发现部署完,上线后,还要弄不少东西.下面就是我记录.整理的一些上线网站基本都会用到的网站和配置. 加入统计代码 这个是必 ...

  7. Java基础19:Java集合框架梳理

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  8. C语言实现二叉树的创建&遍历

    算法思想(重点是递归的使用)  利用扩展先序遍历序列创建二叉链表 采用类似先序遍历的递归算法,首先读入当前根结点的数据,如果是'.'则将当前 树根置为空,否则申请一个新结点,存入当前根结点的数据,分别 ...

  9. cache2go - cachetable源码分析

    今天我们来看cachetable.go这个源码文件,除了前面介绍过的主要数据结构CacheTable外还有如下2个类型: 下面先看剩下2个类型是怎么定义的: CacheItemPair非常简单,注释一 ...

  10. Docker系列02—LXC---Docker的“前身”

    本文收录在容器技术学习系列文章总目录 一.LXC介绍 1.Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源. 2.LXC为Linux Containe ...