oracle补丁术语(oracle补丁冲突解决)
sinye56 2024-10-13 08:39 7 浏览 0 评论
名称说明
Release Release版本的前2个字段指定(小数点分隔的字段)如ORACLE 10gR1 10gR2 , 11gR1 11gR2, 12cR1 12cR2…
Base/Major Release版本的前4个字段, 如11.2.0.1, 可以在OTN、edelivery等站点上公开下载,
Patch Set Release就是早期大家常说的PSR。这是在主版本号上发布的补丁集,版本的第4个字段指定,如11.2.0.4,修复了较多的Bug,可能会包含一些增强功能(Enhancement)。比如11.2.0.1是一个主版本,那么11.2.0.2、11.2.0.3就是2个不同的Patch set。这种补丁集经过了严格的集成测试,也是累积型的。所以推荐安装最新的Patch Set。
Database Patch Set Update就是DBA&DMA们常论道的PSU.Oracle 选取在每个季度用户下载数量最多,并且得到验证具有较低风险的补丁放入到每个季度的PSU中,修复比较严重的一些问题,包含每个季度的CPU,是累积型的。针对数据库以及数据库客户端的重要修复。包括安全(CPU)内容。没有优化器修复,虽然在描述PSU的时候会用到数据库版本第5位,但实际上打完PSU后并不会真正改变数据库的版本,需要从opatch lsinv确认
¤ 注意
(1) Windows上没有CPU和PSU,对于Windows和Exadata,Oracle使用Bundle Patch代替PSU,Bundle Patch会包含PSU的内容
(2) 在11G之前有些PSU可以直接安装,而有些PSU则必须要求安装了上一个版本的PSU之后才能继续安装。比如对于10.2.0.4版本的数据库来说,PSU 10.2.0.4.4可以直接安装在最原始的10.2.0.4.0版本中,而最新的PSU 10.2.0.4.8则必须要求先安装10.2.0.4.4。更多信息参考PSU 附带的readme.txt
(3)从11.2.0.2版本开始,一个新的补丁策略被引入,11.2.0.1之后发布的Patch Set本身就是一个完整的安装包,不再需要基础的Release 版本安装。
MOS站点中Oracle Recommended Patches — Oracle Database [ID 756671.1] 文档中查到各个产品版本最新的PSU。
查看PSU
$opatch lsinventory -bugs_fixed | grep -i ‘DATABASE PSU’
# 11g r2 and above
$ opatch lsinventory | grep “Patch Set Update”
Database Grid Infrastructure Patch Set Update也就是GI PSU,适用于11.2.0.1以上的RAC DB 安装在 Unix 平台上 (包括单实例 RAC)。补丁包括 Grid Infrastructure 的重要修复,也包括匹配的 DB PSU,但不包括任何 OJVM PSU,季度发行,在11.2以前叫CRS PSU,从11.2后不再发行。
OJVM Patch Set Update也就没是OJVM PSU, 适用于数据库版本DB 版本 11.1.0.7,11.2.0.3,11.2.0.4,12.1.0.1 及以上所有平台。须知 Windows 平台有特殊的 OJVM PSU 覆盖补丁安装于 Windows BP 上,
2014年10月提出 OJVM PSU,但是 OJVM 和 JDBC 有单独的补丁。
2015年1月之后 OJVM PSU 包括 JDBC 针对数据库的修复
在12c中的DBBP中包含了OJVM PSU
Timezone PatchesDB 和 DB client 安装,当对最新时区数据要求很高时,补丁仅包含时区数据,每半年发行一次。
Critical Patch UpdateOracle在2005年开始引入的产品安全更新策略,CPU最早的雏形出现在2005年,该项目致力于为客户周期性地提供累积性的补丁以修复安全漏洞。没有一个强制要求安装CPU的理由,Oracle仅仅是强烈推荐实施这些补丁以降低潜在的安全风险并降低受到骇客入侵成功的概率, 由月/年指定 如11.2.0.4 Jan 2015 SPU
¤ 这个指的就是CPU补丁。每季度发布一次,用来修复安全方面的一些补丁,是累积型的。目前(2012年10月)已经更名为Security Patch Update (SPU)
¤ 这类问题本来不属于软件错误,在正常使用中不会出现任何问题。但是别有用心的人可以通过运行非常精巧设计的代码 ,绕过数据库系统的安全管理机制,达到非授权存取的目的。
分为Normal CPU和Molecular CPU(最早是从10.2.0.3 CPUJUL2007)For LINUX/UNIT 平台, CPU Bundle Patch For Windows平台
¤ 重要补丁公告参见这里.
PSU包含了最新的CPU, 从12.1.0.1开始CPU不再单独发布而是包含在PSU中发布。
Interim Patch/One-Off Patch¤ 是我们常说的小补丁,为了修复某(几)个Bug而发布的补丁。这种补丁推荐在测试库上测试无误后再安装在生产库上。
Merged Patch¤ 合并的补丁。当几个小补丁之间有冲突,不能同时安装的时候,需要提供这种Merged Patch。补丁冲突主要是由于2个或者多个补丁修改同一个文件,但是修改的内容是不同的。
“Quarterly Full Stack Download Patch” / “Combo Patch”若干不同的补丁打包在一起发布,适用于DB 版本 11.1.0.7,11.2.0.3,11.2.0.4,12.1.0.1 及以上,2014年10月开始每季度发行一次, 在一个下载中包括不同组件的 Patch Set Updates
例如:”Quarterly Full Stack Download Patch for Exadata” 把 “Quarterly Database Patch for Exadata”与 OJVM PSU 还有其他的 Exadata系统补丁包含在一个下载链接中。
Windows Bundle Patch(BP)¤ 仅适用于WINDOWS平台的补丁集修复多个Bug。在Windows平台上的Oracle没有小补丁,只有这种Bundle Patch。 这种累积型的补丁集会周期性的发布(至少每季一次),也就是每个Bundle Patch会包含之前所有的Bundle Patch。比如Windows Bundle Patch 16,它会包含之前所有15个Bundle Patch,所以我们总是推荐安装最新的Bundle Patch。Oracle的集群软件和数据库软件的Window Bundle Patch是同一个,比如Windows Bundle Patch 16(补丁号16167942,既可以打在集群上,也可以打在数据库上) , 每季度会包含 DB PSU 和 OJVM PSU 内容。。
■要了解Windows Bundle Patch的补丁号,可以参考MOS文档:
Note 161549.1 Oracle Database, Networking and Grid Agent Patches for Microsoft Platforms
Diagnostic Patch诊断补丁。顾名思义,这类补丁不是用来解决问题的,而是用来寻找问题的原因的。这类补丁只在Oracle技术支持部门要求安装时,才需要安装。在得到需要的诊断信息后 ,应立即卸载这一补丁。
Composite Patch¤ 从2012年4月份的Database PSU 11.2.0.3.2和11.2.0.2.0.7开始,推出一种新的概念叫Composite Patches。 这是一种新型的补丁包,它不同于其他的累积型补丁包。如果是第一次安装Composite Patches,那么该Composite Patches所包括的全部补丁都会被安装,后续安装的Composite Patches,只会安装对比前一次Composite Patches有变化的部分和新增加的补丁。
¤ Composite Patche的改进包括减少补丁安装时间,减少回滚以前应用的overlay patches的需要。 新的Composite Patches格式,使以前PSU应用的overlay patches和新安装的PSU并存成为可能。更多信息,请参考Document 1376691.1 ‘Composite Patches for Oracle Products’ 和Oracle Database Support NEWS April edition.
■ PSU就是一种Composite Patch
¤第一次安装的composite patch为PSU 11.2.0.3.5:
Installed Top-level Products (1):
Oracle Database 11g 11.2.0.3.0
There are 1 products installed in this Oracle Home.
Interim patches (1) :
Patch 14727310: applied on Fri Dec 09 10:59:28 EST 2011
Patch Description: “Database Patch Set Update : 11.2.0.3.5 (14727310)” <==变化和新增的部分
Created on 14 Jan 2013, 07:56:00 hrs PST8PDT
Sub-patch 14275605; “Database Patch Set Update : 11.2.0.3.4 (14275605)”<==Sub-patch
Sub-patch 13923374; “Database Patch Set Update : 11.2.0.3.3 (13923374)”<==Sub-patch
Sub-patch 13696216; “Database Patch Set Update : 11.2.0.3.2 (13696216)”<==Sub-patch
Sub-patch 13343438; “Database Patch Set Update : 11.2.0.3.1 (13343438)”<==Sub-patch
Bugs fixed:
13566938, 13593999, 10350832, 14138130 …
¤安装下一个composite patch PSU 11.2.0.3.6时,只需要安装有变化的部分和新增加的patches,不需要再安装之前已经安装的11.2.0.3.1 、11.2.0.3.2,11.2.0.3.4和11.2.0.3.5,之前已经安装的这部分就称为sub-patch:
Patch 16056266: applied on Sun Apr 28 12:42:57 CST 2013
Patch Description: “Database Patch Set Update : 11.2.0.3.6 (16056266)” <==变化和新增的部分
Created on 12 Mar 2013, 02:14:47 hrs PST8PDT
Sub-patch 14727310; “Database Patch Set Update : 11.2.0.3.5 (14727310)”<==Sub-patch
Sub-patch 14275605; “Database Patch Set Update : 11.2.0.3.4 (14275605)”<==Sub-patch
Sub-patch 13923374; “Database Patch Set Update : 11.2.0.3.3 (13923374)”<==Sub-patch
Sub-patch 13696216; “Database Patch Set Update : 11.2.0.3.2 (13696216)”<==Sub-patch
Sub-patch 13343438; “Database Patch Set Update : 11.2.0.3.1 (13343438)”<==Sub-patch
Bugs fixed:
13616375, 14035825, 12861463, 12834027, 15862021, 13632809, 13377816 …
¤在MOS文档中有针对Composite Patches详细的说明:Note 1376691.1 Composite Patches for Oracle Products
Database Patch for Exadata也叫EXADBBP 或BP,仅用于exadata machine ORACLE 11G,每月发行, 每月重要 的BP都会放在本季度的Quarterly Full Stack Download Patch for Exadata
Quarterly Full Stack Download Patch for ExadataQFSDP for Exadata,同样也是仅用于EXADATA MACHINE ORACLE 11G, 每季度发行,包括 Exadata 上的数据库补丁以及其他 Exadata 组件的补丁。
不可用于非EXADATA系统。大多数更新都是专门为 Exadata 上的 Oracle Database (DB_BP) 和 Oracle Clusterware (GI_BP) 创建的 Bundle patches 发行的。Bundle patches 包含的不是 Exadata 特定代码,但是,只能在用于测试目的,或者是为Exadata 系统提供灾难恢复支持的时候,才可以在 non-Exadata 系统上安装这些补丁。只有当 non-Exadata 系统用在 Data Guard 环境中作为 Exadata 系统的备用系统时,Oracle 才为 non-Exadata 系统提供在 Exadata bundle patches 基础上的临时修复。
Database Proactive Bundle Patch适用于12c 数据库安装在 Exadata 上,同样适用于任何使用 Database In-Memory (DBIM) 特性的 12c 系统,RAC 或 non-RAC。数据库和 Grid 的 home 也适用。仅用于 12.1.0.2 及以上 DB on linux/unix平台,从1937782.1可以看出在2016年4月前的补丁都是叫for Engineered Systems and DB In-Memory, 发布周期为每个月一次,截至2016年4月,Database Patch for Engineered Systems and Database In-Memory 已重新命名为”Database Proactive Bundle Patch”,不再只限于Engineered Systems and DB In-Memory,可以用于EXADATA也可以用于非EXADATA,和RAC及非RAC系统。为每季度发布一次,成为了一种新型的季度补丁,也是累计型,版本的第5个字段指定,”Database Proactive Bundle Patch”比Patch Set Update (PSU) 需要多一些测试,因为它提供了大量的修复.
¤DBBP就PSU的 超集,BP是增量包含的如10,包含1-9,也包含了创建BP时最近的PSU和CPU,所以建议安装最新的BP, 准确应该是说包含了PSU,CPU修复的问题。
¤最新的BP latest Bundle Patch can be found in the MOS note 21188742.8 or in the Mos note: 12.1.0.2 Bundle Patches for Engineered Systems and DB In-Memory (Doc ID 1937782.1).
¤For In-Memory customers we recommend that you always run with the latest Bundle Patch!
¤重要的一点是12C的DBBP和以前的 “Windows Bundle Patch” (BP)没有直接关系,windows 还是继续使用之前的WINDOWS BP.
新的DBBP在单独的子目录中所含下列组件:
* Clusterware component the same as GI PSU
* ACFS component the same as GI PSU
* 一个数据库bundle 组件包含了所有的PSU修复补丁及并且“以及专门针对Engineered Systems and DB In-Memory的额外修复”
¤虽然DBBP是包含了多个PSU和BUG FIXED,但是DBBP不能是基于上一季度的PSU继续安装,反之亦然,所以如果切换DBBP和PSU的补丁安装技术需要提前rollback有冲突的PSU, 这样做需要更我的时间窗口和停机时间。
如果下载同期的DBBP和PSU 会发现里面的子补丁存在互斥, 在DBBP的readme中会看到DBBP明确是增量的包含了所有的PSU和CPU,虽然子补丁号不同 但是安装后使用opatch lsinventory -bugs_fixed 会发现DBBP会包含了同期PSU修得的所有BUG,还能找到一些fixed的BUG在DBBP中,而没有在PSU中 。除此之外,“Proactive”DBBP包含Non-Engineered Systems或DBIM时影响RDBMS的PSU中未包含修复的错误。 dba_registry_sqlpatch视图的字段BUNDLE_SERIES可以看到安装的PATCH是PSU还是DBBP. 前面所指的都是ORACLE企业版,在有些DBBP的readme中可能会写标准版还是应该安装PSU,注意是“应该”而不是“必须”.
o 该 bundle 的修复信息可能包括一些”Exadata”特定的修复,这是因为 bundle 同样适用于 Exadata 系统。
o 详情请参阅 Note 1937782.1 12.1.0.2 Database Proactive Bundle Patches / Bundle Patches for Engineered Systems and DB In-Memory – List of Fixes in each Bundle – 每个 bundle 的修复列表。
相关推荐
- 程序员:JDK的安装与配置(完整版)_jdk的安装方法
-
对于Java程序员来说,jdk是必不陌生的一个词。但怎么安装配置jdk,对新手来说确实头疼的一件事情。我这里以jdk10为例,详细的说明讲解了jdk的安装和配置,如果有不明白的小伙伴可以评论区留言哦下...
- Linux中安装jdk并配置环境变量_linux jdk安装教程及环境变量配置
-
一、通过连接工具登录到Linux(我这里使用的Centos7.6版本)服务器连接工具有很多我就不一一介绍了今天使用比较常用的XShell工具登录成功如下:二、上传jdk安装包到Linux服务器jdk...
- 麒麟系统安装JAVA JDK教程_麒麟系统配置jdk
-
检查检查系统是否自带java在麒麟系统桌面空白处,右键“在终端打开”,打开shell对话框输入:java–version查看是否自带java及版本如图所示,系统自带OpenJDK,要先卸载自带JDK...
- 学习笔记-Linux JDK - 安装&配置
-
前提条件#检查是否存在JDKrpm-qa|grepjava#删除现存JDKyum-yremovejava*安装OracleJDK不分系统#进入安装文件目...
- Linux新手入门系列:Linux下jdk安装配置
-
本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。注意:L...
- 测试员必备:Linux下安装JDK 1.8你必须知道的那些事
-
1.简介在Oracle收购Sun后,Java的一系列产品就被整合到Oracle官网中,打开官网乍眼一看也不知道去哪里下载,还得一个一个的摸索尝试,而且网上大多数都是一些Oracle收购Sun前,或者就...
- Linux 下安装JDK17_linux 安装jdk1.8 yum
-
一、安装环境操作系统:JDK版本:17二、安装步骤第一步:下载安装包下载Linux环境下的jdk1.8,请去官网(https://www.oracle.com/java/technologies/do...
- 在Ubuntu系统中安装JDK 17并配置环境变量教程
-
在Ubuntu系统上安装JDK17并配置环境变量是Java开发环境搭建的重要步骤。JDK17是Oracle提供的长期支持版本,广泛用于开发Java应用程序。以下是详细的步骤,帮助你在Ubuntu系...
- 如何在 Linux 上安装 Java_linux安装java的步骤
-
在桌面上拥抱Java应用程序,然后在所有桌面上运行它们。--SethKenlon(作者)无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序...
- Windows和Linux环境下的JDK安装教程
-
JavaDevelopmentKit(简称JDK),是Java开发的核心工具包,提供了Java应用程序的编译、运行和开发所需的各类工具和类库。它包括了JRE(JavaRuntimeEnviro...
- linux安装jdk_linux安装jdk软连接
-
JDK是啥就不用多介绍了哈,外行的人也不会进来看我的博文。依然记得读大学那会,第一次实验课就是在机房安装jdk,编写HelloWorld程序。时光飞逝啊,一下过了十多年了,挣了不少钱,买了跑车,娶了富...
- linux安装jdk,全局配置,不同用户不同jdk
-
jdk1.8安装包链接:https://pan.baidu.com/s/14qBrh6ZpLK04QS8ogCepwg提取码:09zs上传文件解压tar-zxvfjdk-8u152-linux-...
- 运维大神教你在linux下安装jdk8_linux安装jdk1.7
-
1.到官网下载适合自己机器的版本。楼主下载的是jdk-8u66-linux-i586.tar.gzhttp://www.oracle.com/technetwork/java/javase/downl...
- window和linux安装JDK1.8_linux 安装jdk1.8.tar
-
Windows安装JDK1.8的步骤:步骤1:下载JDK打开浏览器,找到JDK下载页面https://d.injdk.cn/download/oraclejdk/8在页面中找到并点击“下载...
- 最全的linux下安装JavaJDK的教程(图文详解)不会安装你来打我?
-
默认已经有了linux服务器,且有root账号首先检查一下是否已经安装过java的jdk任意位置输入命令:whichjava像我这个已经安装过了,就会提示在哪个位置,你的肯定是找不到。一般我们在...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- linux进程通信 (63)