Patching or upgrading RAC database is as easy as patching or upgrading non RAC or non Clustered database, only difference is cluster_database parameter needs to be set to false while running the catupgrd.sql script(10g,11g) or catpatch.sql(9i). Other difference is one and only one instance must be opened in upgrade mode(10,g,11g) or migrate mode(9i) when running upgrade script,which is obviously the only option as setting cluster_database=false means only one instance can be mounted or opened.
OUTLINE:
1. set init parameter cluster_database=false
2. start only one instance in migrate or upgrade mode
startup upgrade
3. run the catupgrd.sql script in same way it is run on non rac, non clustered database
4. after the catupgrd.sql script has been successfully run i.e you have queried dba_registry and it is showing all required database components have been upgraded then
a) set the init parameter cluster_database=true
b) start all the clustered/rac instanaces
OUTLINE:
1. set init parameter cluster_database=false
2. start only one instance in migrate or upgrade mode
startup upgrade
3. run the catupgrd.sql script in same way it is run on non rac, non clustered database
4. after the catupgrd.sql script has been successfully run i.e you have queried dba_registry and it is showing all required database components have been upgraded then
a) set the init parameter cluster_database=true
b) start all the clustered/rac instanaces