Oracle 10g 应用补丁PSU 10.2.0.5.180717
最近测试了一下在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的更多相关文章
- oracle 11GR2 单机打补丁PSU 11.2.0.4.180717
上传补丁包,修改权限 su - oracle mdir /tmp/psu mv p6880880_112319_Linux-x86-64.zip /tmp/psu/mv databasepsu1807 ...
- 单机 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 : ...
- 关于Oracle 10.2.0.5 版本应用SCN补丁14121009相关问题
环境:OEL 5.7 + Oracle 10.2.0.5 背景:Oracle发布的两篇关于2019年6月份将自动调整高版本数据库的SCN COMPATIBILITY的MOS文章引起了很多客户的恐慌,尤 ...
- 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 ...
- CENTOS 6.4 安装oracle 10g,手工建库及升级到10.2.0.5
一. 数据库软件安装 参照官方手册 1.安装rpm包 注这里的yum直接用163的yum yum -y install binutils compat-libstdc++-33 compat-libs ...
- oracle 10g RAC psu过程
1 升级crs 至10.2.0.5.2 1) 升级opatch 程序,PSU对opatch的版本有要求,详见readme文件,此步操作共涉及到每个节点的ORACLE_HOME和ORA_CRS_HOME ...
- 【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 打补丁升级 ...
- Linux下Oracle 10.2.0.1升级到10.2.0.4总结
最近部署测试环境时,将测试环境ORACLE数据库从10.2.0.1升级到了10.2.0.4,顺便整理记录一下升级过程. 实验环境: 操作系统:Oracle Linux Server release 5 ...
- Oracle Database常用补丁集Patch号及各版本PSU
Oracle Database常用补丁集Patch号及各版本PSU------------------------------------------------------------------- ...
随机推荐
- [Swift]LeetCode486. 预测赢家 | Predict the Winner
Given an array of scores that are non-negative integers. Player 1 picks one of the numbers from eith ...
- OpenOCD的概念,安装和使用
概念: OpenOCD是一个运行于PC上的开源调试软件,它可以控制包括Wiggler之内的很多JTAG硬件:我们可以将它理解为一种GDB服务程序.OpenOCD的源码只能通过SVN下载,地址是:svn ...
- spring统一错误响应设置
在类入口增加 @RestControllerAdvice注解.可以用于定义@ExceptionHandler.@InitBinder.@ModelAttribute,并应用到所有@RequestMap ...
- MySQL优化之推荐使用规范
一.基础规范 使用InnoDB存储引擎支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 推荐使用utf8mb4字符集无需转码,无乱码风险, 支持emoji表情以及部分不常见汉字 ...
- 动手实现一个 LRU cache
前言 LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用. 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满. 如常 ...
- Nancy in .NET Core学习笔记 - 路由
前文中,我介绍了Nancy的来源和优点,并创建了一个简单的Nancy应用,在网页中输出了一个"Hello World",本篇我来总结一下Nancy中的路由 Nancy中的路由的定义 ...
- asp.net core系列 33 EF查询数据 (2)
一. 原生SQL查询 接着上篇讲.通过 Entity Framework Core 可以在使用关系数据库时下降到原始 SQL 查询. 在无法使用 LINQ 表达要执行的查询时,或因使用 LINQ 查询 ...
- 从锅炉工到AI专家(4)
手写数字识别问题 图像识别是深度学习众多主流应用之一,手写数字识别则是图像识别范畴简化版的入门学习经典案例.在TensorFlow的官方文档中,把手写数字识别"MNIST"案例称为 ...
- jar文件和aar文件的区别
1. *.jar,JAR 文件就是 JavaArchive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式.只包含了class文件与清单文件 ,不包含资源文件 ...
- exec族函数详解及循环创建子进程
前言:之前也知道exec族函数,但没有完全掌握,昨天又重新学习了一遍,基本完全掌握了,还有一些父子进程和循环创建子进程的问题,还要介绍一下环境变量,今天分享一下. 一.环境变量 先介绍下环境的概念和特 ...