实验环境 redhat 5.6 X64 ORACLE 11G R2 11.2.0.2 RAC
补丁信息
p17272753_112020_Linux-x86-64 11.2.0.2.12
介绍:
由于在Grid Infrastructure Patch Set Update(以下简称GI PSU)中包括了DB的PSU,所以只要下载并按照GI PSU 的readme安装补丁,并使用opatch auto 就可以把GI和数据库的PSU都安装上,而且使用opatch auto 的好处是完全的自动化,不需要手工停止/启动GI。安装完成后,在GI和DB的ORACLE_HOME会分别安装了GI和DB的PSU,也就是每个ORACLE_HOME下都有两个PSU,一个是GI的,一个是DB的。推荐这种安装方法,因为有的Bug既需要在GI中修复,又需要在DB中修复。
安装PSU的过程是滚动的(Rolling),也就是先在一台节点按照readme中的步骤安装这个PSU,当这台执行完毕,所以资源都启动后,依次在其它节点执行。注意,opatch auto不能在多个节点同时执行。
安装步骤:
1、更新补丁文件
https://updates.oracle.com/download/6880880.html
先备份原先的补丁文件目录,然后将下载的最新的补丁文件解压到$CRS_HOME 和 ORACLE_HOME $下面有几个节点就更新几个节点。更新后的目录权限要和原先目录一模一样。
2、生成rsp文件
grid:
cd $ORACLE_HOME/OPatch/ocm/bin/
$./emocmrsp
It will be created in /u01/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
Oracle:
cd $ORACLE_HOME/OPatch/ocm/bin/
$./emocmrsp
It will be created in /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/ocm/bin/ocm.rsp
3、确认补丁环境正确
su - grid
$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh /u01/app/11.2.0/grid
su - oracle
$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh /u01/app/oracle/product/11.2.0/dbhome_1
4、上传解压补丁文件 不要放在/tmp 目录下面
unzip p17272753_112020_Linux-x86-64.zip
5、停止EM
如果有EM 停止EM
su - oracle
emctl stop dbconsole
6、 检查补丁冲突
su - grid
到解压目录
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./ #出错
'''
The details are:
Unable to create Patch Object.
Exception occured : null
OPatch failed with error code 2
'''
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/soft
'''
Log file location : /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2015-07-07_17-58-19PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.
'''
7、安装补丁 root 用户!!!!
# export PATH=$PATH:/u01/app/11.2.0/grid/OPatch
#opatch auto /u01/soft -oh /u01/app/11.2.0/grid
/u01/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
#opatch auto /u01/soft -oh /u01/app/oracle/product/11.2.0/dbhome_1
/u01/app/oracle/product/11.2.0/dbhome_1/OPatch/ocm/bin/ocm.rsp
上面的所有步骤在一台节点执行完后,在其他节点依次执行。千万不要同时在两个节点执行opatch auto 命令。
8、升级数据库字典
在任意一台节点用oracle用户连接到数据库上(只需在一台节点执行一次,不需要所有节点都执行):
cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle.sql psu apply
SQL> QUIT
1、注意安装补丁时要保证软件安装目录有充足空间,这次安装补丁包时补丁包大小仅为230多M 但是安装时候报错,目录空间 小于3.8G 补丁安装失败。
2、 第二个节点 升级GI 失败后升级DB 成功,等目录扩容后升级GI 成功。 说明可以分开,只不过这时候的节点数据库是打不开的。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26764973/viewspace-1725532/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26764973/viewspace-1725532/