目录

  • 一. RAC Patch的几种方法
    • 1.1 对所有节点同时`Patch`(`All-Node Patch`)
    • 1.2 使用最小宕机时间来打`Patch`
    • 1.3 `Rolling Patch`(不需要`down time`)
    • 1.4 如何判断使用哪种方法
  • 二. 如何判断`Patch` 是否是`Rolling Patch`?
    • 2.1检查`patch`是否是 `rolling patch`
    • 2.2 `Patch`的一些限制

Oracle 11g 新特性 --Online Patching (Hot Patching 热补丁)说明
http://blog.csdn.net/tianlesoftware/article/details/8214412

这里看一下RACPatch。 这里是针对DB Patch 来说明,如果是RACGI升级,或者是PSR,还是需要停机的。因为GI的升级需要停掉整个CRS。 但对数据库独立patch则可以采取滚动方式来安装。

一. RAC Patch的几种方法

RAC 环境下有三种不同的patch方法:

1.1 对所有节点同时PatchAll-Node Patch

对于这种模式,OPatch 先在本地节点apply patch,然后在其他节点apply,最后更新inventory。 在这个patch的过程中,所有实例都必须shutdown
该模式的操作步骤如下:
(1)关闭所有节点上的实例。
(2)在所有节点上apply patch
(3)启动所有实例。

1.2 使用最小宕机时间来打Patch

在这种模式下,OPatch 先对本地节点打opatch。然后让用户选择其他的节点来进行patch, 其他节点也patch完成,最后在更新inventory
在这种模式下,downtime的时间就是第二个节点关闭到第一个节点起来之间的时间。
最小宕机的操作步骤如下:
(1)关闭节点1的实例
(2)在节点1上apply Patch
(3)关闭节点2上的实例。
(4)在节点2上应用Patch
(5)关闭节点3上的实例。
(6)在这个时候,节点1和节点2的实例可以启动。
(7)在节点3上应用patch
(8)启动节点3上的实例。
以上整个过程,downtime就是节点3 shutdown到节点1,2启动这段时间。

1.3 Rolling Patch(不需要down time

在这种方法里,没有downtime 时间。 每个节点都可以patch,并且其他节点也可以正常运行,这种情况下对系统就没有影响。
Rolling Patch 也不总是不需要downtime时间,因为有些patch支持 rolling patch,有些不支持,对于不支持rolling patch的,只能按照老方法来安装。
Rolling patch的步骤如下:
(1)关闭节点1的实例
(2)在节点1上应用Patch
(3)在节点1上启动实例。
(4)关闭节点2上的实例。
(5)在节点2上应用Patch
(6)在节点2上启动实例。
(7)关闭节点3上的实例。
(8)在节点3上应用Patch
(9)启动节点3上的实例。

1.4 如何判断使用哪种方法

只有满足特定条件的Patch 才可以进行rolling patch。该类patch被称为:rolling updateble patch 或者 rolling patch
如果用户指定了最小宕机时间,选择最小宕机时间,如果没有指定,就使用rolling patch,最后在考虑同时对所有节点进行patch

二. 如何判断Patch 是否是Rolling Patch

oracle 发布一个patch的时候,会对patch 进行标记:rolling 或者是not rolling。大部分的patch 都是rolling的。
Rolling Patch 有如下特性:
(1)Patch 不影响数据库的内容
(2)PatchRAC 内部通信结构无关
(3)Patch 改变程序的逻辑,不修改kernel modules的common header definitions。包括客户端的patch,其只影响一些工具,如export,import,sql*plussql*loader等。
只有独立的patches才是rollable的。对于patch sets不能进行rolling patch
将多个rolling patch 合并起来的merge patch 和普通的patch都不是 rolling patch
Oracle 9.2.0.4 开始,根据定义的规则,所有的patches都会被标记为rolling 或者 not rolling patch。 在这之前的patch都会标记为not rolling

2.1检查patch是否是 rolling patch

执行如下命令:

  • 9i or 10gR1:
    opatch query -is_rolling
  • 10gR2 :
    opatch query -all [unzipped patchlocation] | grep rolling
  • 10gR2 on Windows:
    opatch query -all [unzipped patchlocation] | findstr rolling
  • Later 10gR2 or 11g:
    opatch query -is_rolling_patch [unzipped patch location]

如果我们解压缩的patch 路径包含多个子patch目录,那么opatch命令就不能正常工作。
–不能用root用户执行判断命令:

[root@racbj01 ~]# clear
[root@racbj01 ~]# ll /u01/soft/31718723/
total 240
drwxr-xr-x  5 grid oinstall   4096 Jun 26  2019 29509309
drwxr-xr-x  5 grid oinstall   4096 Aug 23  2019 29938455
drwxr-xr-x 30 grid oinstall   4096 Sep 24  2020 31537677
-rw-r--r--  1 grid oinstall      0 Sep 24  2020 atp_lfp
-rw-r--r--  1 grid oinstall    549 Sep 24  2020 bundle.xml
-rw-rw-r--  1 grid oinstall 139383 Sep 24  2020 PatchSearch.xml
-rw-rw-r--  1 grid oinstall  85851 Oct 19 16:50 README.html
-rw-r--r--  1 grid oinstall      0 Sep 24  2020 README.txt[root@racbj01 ~]# /u01/app/11.2.0/grid/OPatch/opatch query -is_rolling_patch /u01/soft/31718723/
The user is root. OPatch cannot continue if the user is root.OPatch failed with error code 255
[root@racbj01 ~]# su - grid
[grid@racbj01 ~]$ /u01/app/11.2.0/grid/OPatch/opatch query -is_rolling_patch /u01/soft/31718723/
Oracle Interim Patch Installer version 11.2.0.3.25
Copyright (c) 2021, Oracle Corporation.  All rights reserved.Oracle Home       : /u01/app/11.2.0/grid
Central Inventory : /u01/app/oraInventoryfrom           : /u01/app/11.2.0/grid/oraInst.loc
OPatch version    : 11.2.0.3.25
OUI version       : 11.2.0.4.0
Log file location : /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2021-03-31_15-02-26PM_1.logFailed to load the patch object.  Possible causes are:The specified path is not an interim Patch shiphomeMeta-data files are missing from the patch areaPatch location = /u01/soft/31718723/Details = Input metadata files are missing.Patch Location "/u01/soft/31718723/" doesn't point to a valid patch area.--因为我们指定的`/u01/software/16056266`的路径下面还包含其他的子patch,所以报错。OPatch failed with error code 75
[grid@racbj01 ~]$ cd /u01/soft/31718723/
[grid@racbj01 31718723]$ ll
total 240
drwxr-xr-x  5 grid oinstall   4096 Jun 26  2019 29509309
drwxr-xr-x  5 grid oinstall   4096 Aug 23  2019 29938455
drwxr-xr-x 30 grid oinstall   4096 Sep 24  2020 31537677
-rw-r--r--  1 grid oinstall      0 Sep 24  2020 atp_lfp
-rw-r--r--  1 grid oinstall    549 Sep 24  2020 bundle.xml
-rw-rw-r--  1 grid oinstall 139383 Sep 24  2020 PatchSearch.xml
-rw-rw-r--  1 grid oinstall  85851 Oct 19 16:50 README.html
-rw-r--r--  1 grid oinstall      0 Sep 24  2020 README.txt

–对单个patch进行查看:

[grid@racbj01 31718723]$ /u01/app/11.2.0/grid/OPatch/opatch query -is_rolling_patch /u01/soft/31718723/29509309/
Oracle Interim Patch Installer version 11.2.0.3.25
Copyright (c) 2021, Oracle Corporation.  All rights reserved.Oracle Home       : /u01/app/11.2.0/grid
Central Inventory : /u01/app/oraInventoryfrom           : /u01/app/11.2.0/grid/oraInst.loc
OPatch version    : 11.2.0.3.25
OUI version       : 11.2.0.4.0
Log file location : /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2021-03-31_15-04-05PM_1.log--------------------------------------------------------------------------------Patch is a rolling patch: truePatch is a FMW rolling patch: falseOPatch succeeded.
[grid@racbj01 31718723]$ /u01/app/11.2.0/grid/OPatch/opatch query -is_rolling_patch /u01/soft/31718723/29938455/
Oracle Interim Patch Installer version 11.2.0.3.25
Copyright (c) 2021, Oracle Corporation.  All rights reserved.Oracle Home       : /u01/app/11.2.0/grid
Central Inventory : /u01/app/oraInventoryfrom           : /u01/app/11.2.0/grid/oraInst.loc
OPatch version    : 11.2.0.3.25
OUI version       : 11.2.0.4.0
Log file location : /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2021-03-31_15-05-51PM_1.log--------------------------------------------------------------------------------Patch is a rolling patch: truePatch is a FMW rolling patch: falseOPatch succeeded.
2.2 Patch的一些限制

2.2.1Shared File System上进行Patch
Currently Opatch会把Shared File System当作单实例来进行PatchOPatch 会把patch file 放在ORACLE_HOME目录,因为是共享的,所以其他节点也可以访问。

因此对于Shared FileSystem的环境,就不能使用OPatch 的高级功能:rolling patch,在打Patch的时候,所有节点都必须shutdown

2.2.2 每次Patch一个节点
可以在每个节点独立的进行patch,即在opatch的时候只用: -local 关键字,这样就只会在本地节点进行patch

Online Patching相关推荐

  1. EBS R12.2 ADOP (R12.2 AD Online Patching) - 1

    EBS R12.2 有两套 apps 文件系统,一套为run 环境,常用目录为fs1,一套为patch环境,目录为fs2, 甚至如果你安装了或升级到了R12.2.0 , 那就可以使用这个特性,ADOP ...

  2. Slide:11g新特性-在线实施补丁online patching

    11g新特性 在线实施补丁online patching View more documents from Maclean Liu 转载于:https://blog.51cto.com/maclean ...

  3. Oracle E-Business Suite Maintenance Guide Release 12.2(Patching Utilities)

    更多内容参考: http://docs.oracle.com/cd/E51111_01/current/acrobat/122ebsmt.zip Oracle Patch Application As ...

  4. EBS R12.2 ADOP (R12.2 AD Online Patching) - 5

    三, 运行ADOP 1.  典型的例子:   # 注意adop需要在解压的目录 12345 同一目录执行,而不需要cd到12345下.和adpatch不同. $ . /EBSapps.env run ...

  5. leetcode 330. Patching Array | 1798. Maximum Number of Consecutive Values You Can Make

    1798. Maximum Number of Consecutive Values You Can Make | 1798. 你能构造出连续值的最大数目 https://leetcode.com/p ...

  6. kpatch: dynamic kernel patching

    GitHub - dynup/kpatch: kpatch - live kernel patchinghttps://github.com/dynup/kpatch 目录 Supported Arc ...

  7. Oracle 11g 新特性 -- Online Patching (Hot Patching 热补丁)说明

    Oracle 11g 新特性 -- Online Patching (Hot Patching 热补丁)说明 一.官网说明 MOS 的文档:RDBMSOnline Patching Aka Hot P ...

  8. python的猴子补丁(Monkey Patching)

    0. 参考文档 参考文档如下: https://achowdhary.com/monkey-patching/ https://www.cnblogs.com/xp1315458571/p/16049 ...

  9. [Vue源码解析] patching算法

    [Vue源码解析] patching算法 pathching算法:通过对比新旧VNode的不同,然后找出需要更新的节点进行更新 操作:1.创建新增节点 2.删除废弃节点 3.修改需要更新的节点 创建节 ...

最新文章

  1. 合肥天鹅湖万达广场机器人_万达王健林再考察合肥!瞄准政务、高新,年末合肥楼市出现区域分化!...
  2. Python-OpenCV 处理图像(三):图像像素点操作
  3. 13-Introduction to security
  4. 第四范式裴沵思出席绿公司年会:传统企业要尽快完成在线化武装
  5. 03 | 事务隔离:为什么你改了我还看不见
  6. “物联网+云平台”的实验室管理方案,瞄准的是生物医药和化工行业
  7. 查php源码授权后门,PHP授权系统+支持盗版入库+一键黑页后门注入+卡密授权
  8. 怎么把桌面计算机放到快速启动栏,怎么把桌面图标放到快速启动栏
  9. 图像算法研究---一种简单的YUV转RGB的优化算法
  10. 61组第二次团队作业
  11. 滚动到div的底部?
  12. 【pytorch】深度学习提速之自动混合精度
  13. 360无线网卡驱动服务器,360无线网卡驱动
  14. typora设置标题自动编号
  15. html:button按钮背景图片设置
  16. java.lang.NoSuchMethodError: com.xxx.xxx.xxx.po.xxxPo.setXXX(D)V
  17. FrameExit:Conditional Early Exiting for Efficient Video Recognition
  18. 河南省iscc2019线下(hnciscn)Misc
  19. Wallpaper Engine pkg壁纸文件提取工具
  20. 移动支付线上线下支付应用场景

热门文章

  1. 银行案例分析:识别个人贷款客户画像,实现精准营销与风险防范
  2. 多地力推企业上云,大力发展工业互联网|中机智库
  3. 推荐一个查询研究者方向和影响力的网站| 也可以查询杂志是否有专刊开放
  4. drop、delete、truncate比较
  5. [基础]-requests模块使用详解
  6. uniapp修改文件名并保存到本地
  7. 《Vue.js实战》第七章.组件
  8. Power Query简介(超级查询:获取与整理数据)
  9. 黑*头条_第8章_爬虫系统搭建
  10. 使用ansys workbench 的LSDYNA模块研究碰撞的接触设置