I'm currently applying patch 9413827 to a grid infrastruture.
Objective: rather than apply an in place patching, I used a out of place patching strategy. Purpose is to apply patch to u01/app/11.2.0.1/grid rather than u01/app/11.2.0/grid
I copy the working grid home, /u01/app/11.2.0/grid to /u01/app/11.2.0.1/grid and have update the orainventory through the following command.
./runInstaller -attachHome ORACLE_HOME="/u01/app/11.2.0.1/grid" "CLUSTER_NODES={orac01,orac02}" LOCAL_NODE="orac01" -silent -local CRS=true ORACLE_HOME_NAME="Ora11g_gridinfrahome2"
I do not have the option of installing grid binaries and configuring the clusterware again as it will complain that the cluster is already configured.
while unlocking unprotected files
export $GRID_HOME=/u10/app/11.2.0.1/grid
$GRID_HOME/crs/install/rootcrs.pl -unlock
............
CRS-2677: Stop of 'ora.diskmon' on 'orac02' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'orac02' has completed
CRS-4133: Oracle High Availability Services has been stopped.
Successfully unlock /u01/app/11.2.0/grid
If you notice the above I'm trying to unlock /u01/app/11.2.0.1 but instead it is the working /u01/app/11.2.0/grid that got unlocked
so when I apply the patchset, I encountered the following error which is something I expected
grid@ORAC02:~/patchset/9413827> opatch napply -local -oh $GRID_HOME -id 9413827
Invoking OPatch 11.1.0.6.6
Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation. All rights reserved.
UTIL session
Oracle Home : /u01/app/11.2.0.1/grid
Central Inventory : /u01/app/oraInventory
from : /etc/oraInst.loc
OPatch version : 11.1.0.6.6
OUI version : 11.2.0.1.0
OUI location : /u01/app/11.2.0.1/grid/oui
Log file location : /u01/app/11.2.0.1/grid/cfgtoollogs/opatch/opatch2014-06-30_19-09-21PM.log
Patch history file: /u01/app/11.2.0.1/grid/cfgtoollogs/opatch/opatch_history.txt
OPatchSession cannot load inventory for the given Oracle Home /u01/app/11.2.0.1/grid. Possible causes are:
No read or write permission to ORACLE_HOME/.patch_storage
Central Inventory is locked by another OUI instance
No read permission to Central Inventory
The lock file exists in ORACLE_HOME/.patch_storage
The Oracle Home does not exist in Central Inventory
UtilSession failed: Locker::lock() mkdir /u01/app/11.2.0.1/grid/.patch_storage
OPatch failed with error code 73
contents of /u01/app/11.2.0.1/grid/cfgtoollogs/opatch/opatch2014-06-30_19-09-21PM.log is as follow
SEVERE:OUI-67064:OPatchSession cannot load inventory for the given Oracle Home /u01/app/11.2.0.1/grid. Possible causes are:
No read or write permission to ORACLE_HOME/.patch_storage
Central Inventory is locked by another OUI instance
No read permission to Central Inventory
The lock file exists in ORACLE_HOME/.patch_storage
The Oracle Home does not exist in Central Inventory
SEVERE:OUI-67073:UtilSession failed: Locker::lock() mkdir /u01/app/11.2.0.1/grid/.patch_storage
INFO:Finishing UtilSession at Mon Jun 30 19:09:24 GMT+08:00 2014
INFO:Stack Description: java.lang.RuntimeException: Locker::lock() mkdir /u01/app/11.2.0.1/grid/.patch_storage
First question: is it possible to patch a in place patch using a out of place strategy?
If yes, what should be the correct way?
thanks a lot!