Oracle11gr2RAC(11204)打补丁11.2.0.4.8,系统为:SuSE11sp3 X86_64

通过/u01/app/11.2.0/grid/OPatch/opatch auto /tmp/21523375 -ocmrf /tmp/ocm.rsp 同时对ORACLE_HOME,GI_HOME同时升级。出现如下报错:

jason1:/u01/app/11.2.0/grid/OPatch # /u01/app/11.2.0/grid/OPatch/opatch auto /tmp/21523375 -ocmrf /tmp/ocm.rsp 

Executing /u01/app/11.2.0/grid/perl/bin/perl /u01/app/11.2.0/grid/OPatch/crs/patch11203.pl -patchdir /tmp -patchn 21523375 -ocmrf /tmp/ocm.rsp -paramfile /u01/app/11.2.0/grid/crs/install/crsconfig_params


This is the main log file: /u01/app/11.2.0/grid/cfgtoollogs/opatchauto2016-01-20_12-38-42.log


This file will show your detected configuration and all the steps that opatchauto attempted to do on your system:

/u01/app/11.2.0/grid/cfgtoollogs/opatchauto2016-01-20_12-38-42.report.log


2016-01-20 12:38:42: Starting Clusterware Patch Setup

Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params

The opatch Component check failed. This patch is not applicable for /u01/app/oracle/product/11.2.0/dbhome_1

The opatch Component check failed. This patch is not applicable for /u01/app/oracle/product/11.2.0/dbhome_1

Conflict check failed for oracle home  /u01/app/oracle/product/11.2.0/dbhome_1

Conflict check failed

ERROR: Conflict-Check has failed . Please refer to /u01/app/11.2.0/grid/cfgtoollogs/opatchauto2016-01-20_12-38-42.log for details

opatch auto failed.

jason1:/u01/app/11.2.0/grid/OPatch # 


查看opatchauto2016-01-20_12-38-42.log日志,发现如下报错。

2016-01-20 12:39:40: Running as user oracle: /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch prereq CheckComponents -ph /tmp/21523375/21352635 -oh /u01/app/oracle/product/11.2.0/dbhome_1 -customLogDir /u01/app/11.2.0/grid/cfgtoollogs/opatchauto/core

2016-01-20 12:39:40: s_run_as_user2: Running /bin/su oracle -c ' /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch prereq CheckComponents -ph /tmp/21523375/21352635 -oh /u01/app/oracle/product/11.2.0/dbhome_1 -customLogDir /u01/app/11.2.0/grid/cfgtoollogs/opatchauto/core '

2016-01-20 12:39:41: Removing file /tmp/file9jNagp

2016-01-20 12:39:41: Successfully removed file: /tmp/file9jNagp

2016-01-20 12:39:41: /bin/su exited with rc=1


2016-01-20 12:39:41: The opatch Component check failed. This patch is not applicable for /u01/app/oracle/product/11.2.0/dbhome_1

2016-01-20 12:39:41: The component check failed with following error

2016-01-20 12:39:41: Input custom log directory "/u01/app/11.2.0/grid/cfgtoollogs/opatchauto/core" does not exists or not a valid directory.

 OPatch failed with error code 1

..............................省略.................................................

根据日志提示切换到oracle用户下执行以下语句

/u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch prereq CheckComponents -ph /tmp/21523375/21352635 -oh /u01/app/oracle/product/11.2.0/dbhome_1 -customLogDir /u01/app/11.2.0/grid/cfgtoollogs/opatchauto/core

报错提示没有权限,查看该目录权限,发现只有grid用户拥有权限,修改权限。

jason1:/u01/app/11.2.0/grid # ll -ld cfgtoollogs 

drwx------  7 grid oinstall     4096 Jan 20 12:40 cfgtoollogs

jason1:/u01/app/11.2.0/grid # chmod 777 cfgtoollogs/

jason1:/u01/app/11.2.0/grid # ll -ld cfgtoollogs/

drwxrwxrwx 7 grid oinstall 4096 Jan 20 12:44 cfgtoollogs/

jason1:/u01/app/11.2.0/grid # 

修改为目录权限后,再次执行打补丁成功。同样方法查看jason2节点,修改对应目录权限

jason2:/u01/app/11.2.0/grid # ll -ld cfgtoollogs 

drwx------  7 grid oinstall     4096 Jan 20 12:40 cfgtoollogs

jason2:/u01/app/11.2.0/grid # chmod 777 cfgtoollogs/

jason2:/u01/app/11.2.0/grid # ll -ld cfgtoollogs/

drwxrwxrwx 7 grid oinstall 4096 Jan 20 12:44 cfgtoollogs/

jason2:/u01/app/11.2.0/grid # 

opatch成功!