How to install a patch on clusterware 11.2.0.1 into grid infrastructure home

 

       When applying a needed patch to the Grid Infrastructure Home for ASM or CRS the opatch utility may error out with the messages:

 

ApplySession failed: ApplySession failed to prepare the system. ApplySession was not able to create the patch_storage area: /oragrid/rdb_v112/.patch_storage/<patch#_date>
System intact, OPatch will not attempt to restore the system

OPatch failed with error code 73

 

       These errors can be found in the opatch<date_time>.log file in grid_home/cfgtoollogs/opatch directory.
       The reason for these messages are the permissions of the Grid Infrastructure Home.
The grid home needs to be unlocked before a patch can be applied.


Solution


The needed command to unlock the grid home is described in

Oracle® Grid Infrastructure Installation Guide
11g Release 2 (11.2) for Linux (or other platform)
Part Number E10812-03
Chapter 5.4 Modifying Oracle Clusterware Binaries After Installation


       After installation, if you need to modify the Oracle Clusterware configuration, then you must unlock the Grid home.       Please check this chapter for more detailed instructions.

The basic steps needed are:

Unzip the the patch file into a patch location on all nodes. This is becuase we will do a rolling patch by
stopping processes patching the homes and starting processes one node at a time using the -local flag.

1. Stop the CRS managed resources running from DB homes ( as the DB_HOME owner ) using

 

$DB_HOME/bin/srvctl stop home -o <DB_HOME> -s <status file location> -n
 <node name>


 
 note the status file is created by the process

2. As root user change directory to the path Grid_home/crs/install, where Grid_home is the path to the Grid home, and unlock the Grid home using the command rootcrs.pl -unlock -crshome Grid_home, where Grid_home is the path to your Grid infrastructure home. For example, with the grid home /u01/app/11.2.0/grid, enter the following command:

# cd /u01/app/11.2.0/grid/crs/install
# perl rootcrs.pl -unlock -crshome /u01/app/11.2.0/grid


3. change user to grid software owner and apply the patch according its readme


/u01/app/11.2.0/grid/OPatch/opatch napply -oh <CRS_HOME> -local <path to patch>



4. if requested in readme file of patch run the pre script for DB component of the patch using (As DB Home Privilige User)

 patch location/custom/server/patch id/custom/scripts/prepatch.sh  -dbhome <DB_HOME>


5. Apply the DB patch using (As DB Home Privilige User) (if needed and stated in readme file. This example is for a bundle patch containing a CRS portion and a RDBMS portion)

   

<DB_HOME>/OPatch/opatch napply -oh <DB_HOME> -local <path to bundle patch>/custom/server/<patch_id>

 Note here the sub-directory of the patch.

6. . Run the post script for DB component of the patch using (As DB Home Privilige User) (if requested in readme file)

patch location/custom/server/patch id/custom/scripts/postpatch.sh -dbhome <DB_HOME>


7. Run the post script (As Root Privilege User)

# cd /u01/app/11.2.0/grid/crs/install
# perl rootcrs.pl -patch



8. Start the CRS managed resources that were earlier running from DB homes using

<DB_HOME>/bin/srvctl start home -o <DB_HOME> -s <status file location> -n  <node name>



9. Repeat steps 1 through 8 on each cluster member node.

These are the general commands to apply a patch to grid home. Make sure to read the readme file of the patch You are going to apply as additional steps may be needed.
The rootcrs.pl script to unlock and patch grid home may not be mentioned in the particular readme.

 

 

 

From Oracle

-------------------------------------------------------------------------------------------------------

Blog http://blog.csdn.net/tianlesoftware

Email: dvd.dba@gmail.com

DBA1 群:62697716();   DBA2 群:62697977()   DBA3 群:62697850()  

DBA 超级群:63306533();  DBA4 群: 83829929  DBA5群: 142216823   

聊天 群:40132017   聊天2群:69087192

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

posted @ 2011-04-26 09:43  hibernate我最强  阅读(165)  评论(0编辑  收藏  举报