Step By Step: Upgrade Oracle 10g R2
RAC 10.2.0.1 to 10.2.0.3
on Oracle Enterprise Linux 5.5 (32 bit) Platform.
By Bhavin Hingu
Step By Step: Upgrade Clusterware, ASM and Database from
10.2.0.1 to 10.2.0.3.
Backing up the ORACLE_HOMEs before the upgrade:
Steps I followed to take the Backup of ORACLE_HOMEs before
the upgrade: (This can be applied to 11gR1 and 10g databases).
On node1:
mkdir backup
cd backup
dd
if=/dev/dev/raw1 of=ocr_disk.bkp
dd
if=/dev/dev/raw3 of=voting_disk.bkp
tar cvf
node1_crs.tar /u01/app/oracle/crs/*
tar cvf
node1_asm.tar /u01/app/oracle/asm/*
tar cvf
node1_db.tar /u01/app/oracle/db/*
tar cvf
node1_etc_oracle /etc/oracle/*
cp
/etc/inittab /etc_inittab
mkdir etc_init_d
cd etc_init_d
cp
/etc/init.d/init* .
On node2:
mkdir backup
cd backup
tar cvf
node2_crs.tar /u01/app/oracle/crs/*
tar cvf
node2_asm.tar /u01/app/oracle/asm/*
tar cvf
node2_db.tar /u01/app/oracle/db/*
tar cvf
node2_etc_oracle /etc/oracle/*
cp
/etc/inittab /etc_inittab
mkdir etc_init_d
cd etc_init_d
cp /etc/init.d/init*
.
On node3:
mkdir backup
cd backup
tar cvf
node3_crs.tar /u01/app/oracle/crs/*
tar cvf
node3_asm.tar /u01/app/oracle/asm/*
tar cvf
node3_db.tar /u01/app/oracle/db/*
tar cvf
node3_etc_oracle /etc/oracle/*
cp
/etc/inittab /etc_inittab
mkdir etc_init_d
cd etc_init_d
cp
/etc/init.d/init* .
RMAN full
backup was taken.
Upgrade 10gR2 Clusterware from 10.2.0.1 to 10.2.0.3 in
Rolling Fashion (No Downtime):
On Node1:
Stop the labdb1 instance, asm
instance, nodeapps. Relocate any db or cluster service resources to the other
nodes. Stop and disable the CRS on this node and then reboot the node to clean
up any oracle related processes. Once the node comes backup,
enable the crs back and start the runInstaller from the 10203 software
directory.
srvctl
stop instance -d labdb –i labdb1
srvctl
stop asm –n node1
srvctl
stop nodeapps –n node1
crs_relocate ora.labdb.db
crsctl
stop crs
crsctl
disable crs
reboot
crsctl
enable crs ß
once the node comes backup after the reboot.
./runInstaller
–ignoreSysPrereqs
/u01/app/oracle/crs/install/root102.sh ß
run this script at the end as root
Verify the CRS
crsctl
check crs (on all the node) ß it should be up on
all the nodes
crsctl
query crs activeversion node1
crsctl
query crs activeversion node2
crsctl
query crs activeversion node3
crsctl
query crs softwareversion node1
crsctl
query crs softwareversion node2
crsctl
query crs softwareversion node3
On Node2:
Stop the labdb2 instance, asm
instance, nodeapps. Relocate any db or cluster service resources to the other
nodes. Stop and disable the CRS on this node and then reboot the node to clean
up any oracle related processes.
Once the node comes back up, enable
the crs and run the /u01/app/oracle/crs/install/root102.sh
script as root.
srvctl
stop instance -d labdb –i labdb2
srvctl
stop asm –n node2
srvctl
stop nodeapps –n node2
crs_relocate ora.labdb.db
crsctl
stop crs
crsctl
disable crs
reboot
crsctl
enable crs ß
once the node comes backup after the reboot.
/u01/app/oracle/crs/install/root102.sh ß
run this script at the end as root
Verify the CRS
crsctl
check crs (on all the node) ß it should be up on
all the nodes
crsctl
query crs activeversion node1
crsctl
query crs activeversion node2
crsctl
query crs activeversion node3
crsctl
query crs softwareversion node1
crsctl
query crs softwareversion node2
crsctl
query crs softwareversion node3
On Node3:
Stop the labdb3 instance, asm
instance, nodeapps. Relocate any db or cluster service resources to the other
nodes. Stop and disable the CRS on this node and then reboot the node to clean
up any oracle related processes.
Once the node comes back up, enable
the crs and run the /u01/app/oracle/crs/install/root102.sh
script as root.
srvctl
stop instance -d labdb –i labdb3
srvctl
stop asm –n node3
srvctl
stop nodeapps –n node3
crs_relocate
ora.labdb.oltp.cs
crsctl
stop crs
crsctl
disable crs
reboot
crsctl
enable crs ß
once the node comes backup after the reboot.
/u01/app/oracle/crs/install/root102.sh ß
run this script at the end as root
Verify the CRS
crsctl
check crs (on all the node) ß it should be up on
all the nodes
crsctl
query crs activeversion node1
crsctl
query crs activeversion node2
crsctl
query crs activeversion node3
crsctl
query crs softwareversion node1
crsctl
query crs softwareversion node2
crsctl
query crs softwareversion node3
Upgrade 10gR2 ASM from 10.2.0.1 to 10.2.0.3:
Stop database labdb, asm instance, asm
listener from ASM_HOME. Invoke the runInstaller from 10.2.0.3 Patchset directory and select the ASM_HOME to be upgraded.
srvctl
stop database –d labdb
srvctl
stop asm –n node1
srvctl
stop asm –n node2
srvctl
stop asm –n node3
srvctl
stop listener –l LISTENER_NODE1 –n node1
srvctl
stop listener –l LISTENER_NODE2 –n node2
srvctl
stop listener –l LISTENER_NODE3 –n node3
./runInstaller
–ignoreSysPrereqs
At the End, run the root.sh as
root on all the nodes.
Invoke dbua to upgrade the ASM to
10.2.0.3
Upgrade 10gR2 DB from 10.2.0.1 to 10.2.0.3:
Stop database labdb, db Listener from
DB_HOME. Invoke the runInstaller from 10.2.0.3 Patchset
directory and select the DB_HOME to be upgraded.
srvctl
stop database –d labdb
srvctl
stop listener –l LAB_LISTENER_NODE1 –n node1
srvctl
stop listener –l LAB_LISTENER_NODE2 –n node2
srvctl
stop listener –l LAB_LISTENER_NODE3 –n node3
./runInstaller
-ignoreSysPrereqs
At the End, run the root.sh as
root on all the nodes.
Invoke dbua to upgrade the
Database to 10.2.0.3
Upgrade Database using DBUA: