Skip to content
March 4, 2013 / Shivananda Rao P

Upgrade CRS from 10.2.0.1 to 10.2.0.4

Database Name: SRPRIM
Instances: srprim1    Node name: 10gnode1
Instances: srprim2    Node name: 10gnode2
Oracle Database Home and ASM Home: /u01/app/oracle/product/10.2.0/db1
Oracle CRS Home: /u01/app/oracle/product/10.2.0/crs

Below shows the status of CRS and the status of the resources.

[oracle@10gnode1 bin]$ cd $ORA_CRS_HOME
[oracle@10gnode1 crs]$ cd bin/
[oracle@10gnode1 bin]$ ./crsctl check crs
CSS appears healthy
CRS appears healthy
EVM appears healthy
[oracle@10gnode1 bin]$ ./crs_stat -t
Name           Type           Target    State     Host
----------------------------------------------------------
ora....SM1.asm application    ONLINE    ONLINE    10gnode1
ora....E1.lsnr application    ONLINE    ONLINE    10gnode1
ora....de1.gsd application    ONLINE    ONLINE    10gnode1
ora....de1.ons application    ONLINE    ONLINE    10gnode1
ora....de1.vip application    ONLINE    ONLINE    10gnode1
ora....SM2.asm application    ONLINE    ONLINE    10gnode2
ora....E2.lsnr application    ONLINE    ONLINE    10gnode2
ora....de2.gsd application    ONLINE    ONLINE    10gnode2
ora....de2.ons application    ONLINE    ONLINE    10gnode2
ora....de2.vip application    ONLINE    ONLINE    10gnode2
ora.srprim.db  application    ONLINE    ONLINE    10gnode1
ora....m1.inst application    ONLINE    ONLINE    10gnode1
ora....m2.inst application    ONLINE    ONLINE    10gnode2

Lets check the CRS active and Software version and both are being shown up as 10.2.0.1.0


[oracle@10gnode1 bin]$ ./crsctl query crs activeversion
CRS active version on the cluster is [10.2.0.1.0]
[oracle@10gnode1 bin]$ ./crsctl query crs softwareversion
CRS software version on node [10gnode1] is [10.2.0.1.0]

 


[oracle@10gnode1 bin]$ srvctl status asm -n 10gnode1
ASM instance +ASM1 is running on node 10gnode1.
[oracle@10gnode1 bin]$ srvctl status asm -n 10gnode2
ASM instance +ASM2 is running on node 10gnode2.

Since we are applying the patch in a rolling fashion, shutdown the instance on one node 10gnode1 (srprim1).

[oracle@10gnode1 bin]$ srvctl stop instance -d srprim -i srprim1
[oracle@10gnode1 bin]$ srvctl stop asm -n 10gnode1
[oracle@10gnode1 bin]$ srvctl stop nodeapps -n 10gnode1

Cross verify if all the resources accessing the srprim1 instance are down.

[oracle@10gnode1 bin]$ ./crsctl check crs
CSS appears healthy
CRS appears healthy
EVM appears healthy

[oracle@10gnode1 bin]$ ./crs_stat -t
Name           Type           Target    State     Host
------------------------------------------------------------
ora....SM1.asm application    OFFLINE   OFFLINE
ora....E1.lsnr application    OFFLINE   OFFLINE
ora....de1.gsd application    OFFLINE   OFFLINE
ora....de1.ons application    OFFLINE   OFFLINE
ora....de1.vip application    OFFLINE   OFFLINE
ora....SM2.asm application    ONLINE    ONLINE    10gnode2
ora....E2.lsnr application    ONLINE    ONLINE    10gnode2
ora....de2.gsd application    ONLINE    ONLINE    10gnode2
ora....de2.ons application    ONLINE    ONLINE    10gnode2
ora....de2.vip application    ONLINE    ONLINE    10gnode2
ora.srprim.db  application    ONLINE    ONLINE    10gnode1
ora....m1.inst application    OFFLINE   OFFLINE
ora....m2.inst application    ONLINE    ONLINE    10gnode2

Unzip the patch 6810189 and run the runInstaller from the unzipped directory. Select the 10g CRS HOME path that needs to be upgraded. The patch will be applied on this home.

Once when the patching is done, Oracle prompts to run two scripts as root user:

Script 1: Shutdown the CRS daemons by issuing the following command:
/u01/app/oracle/product/10.2.0/crs/bin/crsctl stop crs

root@10gnode1 ~]# /u01/app/oracle/product/10.2.0/crs/bin/crsctlstop crs
Stopping resources.
Successfully stopped CRS resources
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.

Script 2: Run the shell script located at:
/u01/app/oracle/product/10.2.0/crs/install/root102.sh
This script will automatically start the CRS daemons on the patched node upon completion.

root@10gnode1 ~]# /u01/app/oracle/product/10.2.0/crs/install/root102.sh
Creating pre-patch directory for saving pre-patch clusterware files
Completed patching clusterware files to /u01/app/oracle/product/10.2.0/crs
Relinking some shared libraries.
Relinking of patched files is complete.
WARNING: directory '/u01/app/oracle/product/10.2.0' is not owned by root
WARNING: directory '/u01/app/oracle/product' is not owned by root
WARNING: directory '/u01/app/oracle' is not owned by root
WARNING: directory '/u01/app' is not owned by root
WARNING: directory '/u01' is not owned by root
Preparing to recopy patched init and RC scripts.
Recopying init and RC scripts.
Startup will be queued to init within 30 seconds.
Starting up the CRS daemons.
Waiting for the patched CRS daemons to start.
This may take a while on some systems.
.
10204 patch successfully applied.
clscfg: EXISTING configuration version 3 detected.
clscfg: version 3 is 10G Release 2.
Successfully accumulated necessary OCR keys.
Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
node <nodenumber>: <nodename> <private interconnect name> <hostname>
node 1: 10gnode1 10gnode1-priv 10gnode1
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
clscfg -upgrade completed successfully

 

[oracle@10gnode1 bin]$ ./crsctl query crs activeversion
CRS active version on the cluster is [10.2.0.1.0]
[oracle@10gnode1 bin]$
[oracle@10gnode1 bin]$ ./crsctl query crs softwareversion
CRS software version on node [10gnode1] is [10.2.0.4.0]

You can see above that the CRS version is still being shown as 10.2.0.1.0. This would be changed to 10.2.0.4.0 only after the scripts mentioned above (Script 1 and Script 2) are run on the second node (10gnode2) as well.

Now, lets proceed to the next node (10gnode2)

Node 2:

shutdown the instance on node 10gnode2 (srprim2).

[oracle@10gnode2 ~]$ srvctl stop nodeapps -n 10gnode2
[oracle@10gnode2 ~]$ cd /u01/app/oracle/product/10.2.0/crs/bin
[oracle@10gnode2 bin]$ ./crsctl query crs activeversion
CRS active version on the cluster is [10.2.0.1.0]
[oracle@10gnode2 bin]$ ./crsctl query crs softwareversion
CRS software version on node [10gnode2] is [10.2.0.1.0]
[oracle@10gnode2 bin]$
[oracle@10gnode2 bin]$ ./crs_stat -t
Name           Type           Target    State     Host
------------------------------------------------------------
ora....SM1.asm application    ONLINE    ONLINE    10gnode1
ora....E1.lsnr application    ONLINE    ONLINE    10gnode1
ora....de1.gsd application    ONLINE    ONLINE    10gnode1
ora....de1.ons application    ONLINE    ONLINE    10gnode1
ora....de1.vip application    ONLINE    ONLINE    10gnode1
ora....SM2.asm application    OFFLINE   OFFLINE
ora....E2.lsnr application    OFFLINE   OFFLINE
ora....de2.gsd application    OFFLINE   OFFLINE
ora....de2.ons application    OFFLINE   OFFLINE
ora....de2.vip application    OFFLINE   OFFLINE
ora.srprim.db  application    ONLINE    ONLINE    10gnode2
ora....m1.inst application    ONLINE    ONLINE    10gnode1
ora....m2.inst application    OFFLINE   OFFLINE

Now, run the 2 scripts on node 10gnode2 that were prompted by Oracle on 10gnode1 to be run after the patch installation.

Script 1:

[root@10gnode2 ~]# /u01/app/oracle/product/10.2.0/crs/bin/crsctl stop crs
Stopping resources.
Successfully stopped CRS resources
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.

Script 2:

[root@10gnode2 ~]# /u01/app/oracle/product/10.2.0/crs/install/root102.sh
Creating pre-patch directory for saving pre-patch clusterware files
Completed patching clusterware files to /u01/app/oracle/product/10.2.0/crs
Relinking some shared libraries.
Relinking of patched files is complete.
WARNING: directory '/u01/app/oracle/product/10.2.0' is not owned by root
WARNING: directory '/u01/app/oracle/product' is not owned by root
WARNING: directory '/u01/app/oracle' is not owned by root
WARNING: directory '/u01/app' is not owned by root
WARNING: directory '/u01' is not owned by root
Preparing to recopy patched init and RC scripts.
Recopying init and RC scripts.
Startup will be queued to init within 30 seconds.
Starting up the CRS daemons.
Waiting for the patched CRS daemons to start.
This may take a while on some systems.
.
10204 patch successfully applied.
clscfg: EXISTING configuration version 3 detected.
clscfg: version 3 is 10G Release 2.
Successfully accumulated necessary OCR keys.
Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
node <nodenumber>: <nodename> <private interconnect name> <hostname>
node 2: 10gnode2 10gnode2-priv 10gnode2
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
clscfg -upgrade completed successfully

Verify whether the CRS version and the software version have been changed to 10.2.0.4.0 on both the nodes.

[oracle@10gnode2 bin]$ ./crsctl query crs activeversion
CRS active version on the cluster is [10.2.0.4.0]
[oracle@10gnode2 bin]$ ./crsctl query crs softwareversion
CRS software version on node [10gnode2] is [10.2.0.4.0]
[oracle@10gnode2 bin]$

Now lets cross verify if the CRS version has been updated to 10.2.0.4.0 on node 10gnode1 as well.

[oracle@10gnode1 bin]$ ./crsctl query crs activeversion
CRS active version on the cluster is [10.2.0.4.0]
[oracle@10gnode1 bin]$ ./crsctl query crs softwareversion
CRS software version on node [10gnode1] is [10.2.0.4.0]
[oracle@10gnode1 bin]$

Here we go !!

 

COPYRIGHT

© Shivananda Rao P, 2012 to 2018. Unauthorized use and/or duplication of this material without express and written permission from this blog’s author and/or owner is strictly prohibited. Excerpts and links may be used, provided that full and clear credit is given to Shivananda Rao and http://www.shivanandarao-oracle.com with appropriate and specific direction to the original content.

DISCLAIMER

The views expressed here are my own and do not necessarily reflect the views of any other individual, business entity, or organization. The views expressed by visitors on this blog are theirs solely and may not reflect mine.

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: