Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选

首页 / 数据库 / MySQL / Oracle 11.2.0.4 RAC安装最新PSU补丁

环境:两节点RAC(RHEL 6.4 + GI 11.2.0.4 + Oracle 11.2.0.4)
需求:安装最新PSU补丁11.2.0.4.7
  • 1.下载补丁和最新OPatch
  • 2.检查数据库当前OPatch版本
  • 3.更新OPatch
  • 4.解压补丁文件
  • 5.检查补丁之间有无冲突
  • 6.停止数据库和本地crs服务
  • 7.更新补丁
  • 8.登录数据库执行升级字典操作
  • 9.验证补丁更新结果

1. 下载补丁和最新OPatch

MOS 补丁程序和更新程序搜索到最新的PSU:截至目前最新是11.2.0.4.7GRID INFRASTRUCTURE PATCH SET UPDATE 11.2.0.4.7 (JUL2015) (补丁程序)p20996923_112040_Linux-x86-64.zip 635.8 MBOPatch下载地址:
https://updates.oracle.com/download/6880880.html

2. 检查数据库当前OPatch版本

RAC所有节点的GI home和DB home都需要检查。$ $ORACLE_HOME/OPatch/opatch version

3. 更新OPatch

RAC所有节点的GI home和DB home都需要更新。$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bak$ unzip p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME$ $ORACLE_HOME/OPatch/opatch version需要注意grid用户$ORACLE_HOME 权限。$ echo $ORACLE_HOME$ ls -lh $ORACLE_HOME/../# chmod 775 /opt/app/11.2.0/grid

4. 解压补丁文件

$ unzip p20996923_112040_Linux-x86-64.zip

5. 检查补丁之间有无冲突

检查需要打的补丁与现有补丁有无冲突.$ cd 20996923$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./grid用户执行结果:$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./Oracle Interim Patch Installer version 11.2.0.3.12Copyright (c) 2015, Oracle Corporation.All rights reserved.PREREQ sessionOracle Home : /opt/app/11.2.0/gridCentral Inventory : /opt/app/oraInventory from : /opt/app/11.2.0/grid/oraInst.locOPatch version: 11.2.0.3.12OUI version : 11.2.0.4.0Log file location : /opt/app/11.2.0/grid/cfgtoollogs/opatch/opatch2015-10-23_11-53-52AM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.oracle执行结果:$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./Oracle Interim Patch Installer version 11.2.0.3.12Copyright (c) 2015, Oracle Corporation.All rights reserved.PREREQ sessionOracle Home : /opt/app/oracle/product/11.2.0/dbhome_1Central Inventory : /opt/app/oraInventory from : /opt/app/oracle/product/11.2.0/dbhome_1/oraInst.locOPatch version: 11.2.0.3.12OUI version : 11.2.0.4.0Log file location : /opt/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2015-10-23_11-56-06AM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.

6. 停止数据库和本地crs服务

grid用户登录节点1su – oracle$ $ORACLE_HOME/bin/srvctl stop database –d <db-unique-name>su – root# $GRID_HOME/crs/install/rootcrs.pl -unlock

7. 更新补丁

7.1 root用户,指定不同ORACLE_HOME,自动打补丁(失败)

# export ORACLE_HOME=/opt/app/11.2.0/grid# $ORACLE_HOME/OPatch/opatch auto -oh $ORACLE_HOME/ -ocmrf $ORACLE_HOME/OPatch/ocm/bin/emocmrsp# export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1# $ORACLE_HOME/OPatch/opatch auto -oh $ORACLE_HOME/ -ocmrf $ORACLE_HOME/OPatch/ocm/bin/emocmrsp

7.2 尝试手工打补丁

7.2.1 节点1 grid home

[grid@jyracdb1 ~]$ $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /opt/app/media/20996923/Oracle Interim Patch Installer version 11.2.0.3.12Copyright (c) 2015, Oracle Corporation.All rights reserved.Oracle Home : /opt/app/11.2.0/gridCentral Inventory : /opt/app/oraInventory from : /opt/app/11.2.0/grid/oraInst.locOPatch version: 11.2.0.3.12OUI version : 11.2.0.4.0Log file location : /opt/app/11.2.0/grid/cfgtoollogs/opatch/opatch2015-10-23_16-06-35PM_1.logVerifying environment and performing prerequisite checks...OPatch continues with these patches: 202990191747851418031668185225091912155119769489202990132076098220831122Do you want to proceed? [y|n]yUser Responded with: YAll checks passed.Provide your email address to be informed of security issues, install andinitiate Oracle Configuration Manager. Easier for you if you use your MyOracle Support Email address/User Name.Visit http://www.oracle.com/support/policies.html for details.Email address/User Name: You have not provided an email address for notification of security issues.Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:yesPlease shutdown Oracle instances running out of this ORACLE_HOME on the local system.(Oracle Home = "/opt/app/11.2.0/grid")Is the local system ready for patching? [y|n]yUser Responded with: YBacking up files...Applying interim patch "20299019" to OH "/opt/app/11.2.0/grid"Patching component oracle.usm, 11.2.0.4.0...Applying sub-patch "17478514" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.sdo, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.sdo.locator, 11.2.0.4.0...Patching component oracle.nlsrtl.rsf, 11.2.0.4.0...Patching component oracle.xdk.rsf, 11.2.0.4.0...Patching component oracle.rdbms.rman, 11.2.0.4.0...Applying sub-patch "18031668" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.precomp.common, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.ldap.rsf, 11.2.0.4.0...Patching component oracle.rdbms.crs, 11.2.0.4.0...Patching component oracle.ldap.rsf.ic, 11.2.0.4.0...Patching component oracle.rdbms.deconfig, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.rdbms.rman, 11.2.0.4.0...Applying sub-patch "18522509" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.precomp.common, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.rman, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.rdbms.deconfig, 11.2.0.4.0...Applying sub-patch "19121551" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.rdbms.rman, 11.2.0.4.0...Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.ordim.client, 11.2.0.4.0...Patching component oracle.ordim.jai, 11.2.0.4.0...Applying sub-patch "19769489" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.ovm, 11.2.0.4.0 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.oraolap, 11.2.0.4.0 ] , [ oracle.sysman.agent, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms.util, 11.2.0.4.0...Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.xdk.parser.java, 11.2.0.4.0...Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.xdk.rsf, 11.2.0.4.0...Patching component oracle.rdbms.rman, 11.2.0.4.0...Patching component oracle.rdbms.deconfig, 11.2.0.4.0...Applying sub-patch "20299013" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.rdbms.dv, 11.2.0.4.0 ] , [ oracle.rdbms.oci, 11.2.0.4.0 ] , [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.sysman.common, 10.2.0.4.5...Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Patching component oracle.xdk.parser.java, 11.2.0.4.0...Patching component oracle.xdk.rsf, 11.2.0.4.0...Patching component oracle.rdbms.rsf, 11.2.0.4.0...Patching component oracle.sysman.common.core, 10.2.0.4.5...Patching component oracle.rdbms.rman, 11.2.0.4.0...Patching component oracle.rdbms.deconfig, 11.2.0.4.0...Applying sub-patch "20760982" to OH "/opt/app/11.2.0/grid"ApplySession: Optional component(s) [ oracle.sysman.console.db, 11.2.0.4.0 ]not present in the Oracle Home or a higher version is found.Patching component oracle.rdbms, 11.2.0.4.0...Patching component oracle.rdbms.dbscripts, 11.2.0.4.0...Applying interim patch "20831122" to OH "/opt/app/11.2.0/grid"Patching component oracle.crs, 11.2.0.4.0...Composite patch 20760982 successfully applied.Patches 20299019,20831122 successfully applied.Log file location: /opt/app/11.2.0/grid/cfgtoollogs/opatch/opatch2015-10-23_16-06-35PM_1.logOPatch succeeded.

7.2.2 节点1 oracle home

[oracle@jyracdb1 ~]$ $ORACLE_HOME/OPatch/opatch napply -oh $ORACLE_HOME -local /opt/app/media/20996923/20760982/输出略..

7.2.3 执行rootcrs.pl -patch

su – root[root@jyracdb1 20996923]# /opt/app/11.2.0/grid/rdbms/install/rootadd_rdbms.sh [root@jyracdb1 20996923]# /opt/app/11.2.0/grid/crs/install/rootcrs.pl -patchUsing configuration parameter file: /opt/app/11.2.0/grid/crs/install/crsconfig_paramsInstalling Trace File AnalyzerCRS-4123: Oracle High Availability Services has been started.

7.3 然后在节点2重复以上节点1操作

su – oracle[oracle@jyracdb2 ~]$ $ORACLE_HOME/bin/srvctl stop database –d <db-unique-name>或者:[oracle@jyracdb2 ~]$ $ORACLE_HOME/bin/srvctl stop instance -d racdb -i racdb2su – root# $GRID_HOME/crs/install/rootcrs.pl -unlock节点2补丁文件解压到/tmp下了,当然,如果配置共享的NFS等服务,就不必在节点2再解压补丁文件了。[grid@jyracdb2 ~]$ $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /tmp/20996923/[oracle@jyracdb2 ~]$ $ORACLE_HOME/OPatch/opatch napply -oh $ORACLE_HOME -local /tmp/20996923/20760982/执行rootcrs.pl -patchsu – root[root@jyracdb2 ~]# /opt/app/11.2.0/grid/rdbms/install/rootadd_rdbms.sh [root@jyracdb2 ~]# /opt/app/11.2.0/grid/crs/install/rootcrs.pl -patch

8. 登录数据库执行升级字典操作

由于RAC实际只有一个数据库,因此任意节点登录数据库执行1次即可。最后重启数据库。cd $ORACLE_HOME/rdbms/adminsqlplus /nologSQL> CONNECT / AS SYSDBASQL> STARTUPSQL> @catbundle.sql psu applySQL> QUITcd $ORACLE_HOME/rdbms/adminsqlplus /nologSQL> CONNECT / AS SYSDBASQL> @utlrp.sqlSQL> shutdown immediate;SQL> startup;

9. 验证补丁更新结果

各节点的GI HOME和ORACLE HOME都执行验证。$ cd $ORACLE_HOME/OPatch$ ./opatch lsinventory数据库的验证。SQL> select * from dba_registry_history;更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址