For most of you, this is probably trivial.
Needed to get a list of patches for 4-nodes Exadata.
I saw co-worker ssh to each node, source ASM, database environment, run opatch command.
Thinking out loud, there’s has to be an easier way to do this; hence, I started digging into opatch commands.
It’s possible to list patches without having to source the environment.
$ORACLE_HOME/opatch lspatches -oh $ORACLE_HOME, where $ORACLE_HOME is the location for database and grid home.
List patches for all 4-nodes from node1 for ORACLE_HOME:
/u01/app/oracle/product/11.2.0.3/dbhome_1/
/u01/app/12.1.0.2/grid
[oracle@node01 ~]$ /u01/app/oracle/product/11.2.0.3/dbhome_1/OPatch/opatch lspatches -oh /u01/app/oracle/product/11.2.0.3/dbhome_1
19852361; 14201252; 18906063;QUARTERLY CRS PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) (18906063) 21025813;QUARTERLY DATABASE PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) : (21025813)
[oracle@node01 ~]$ /u01/app/12.1.0.2/grid/OPatch/opatch lspatches -oh /u01/app/12.1.0.2/grid
20299018;ACFS Patch Set Update : 12.1.0.2.3 (20299018) 19872484;WLM Patch Set Update: 12.1.0.2.2 (19872484) 20831113;OCW Patch Set Update : 12.1.0.2.4 (20831113) 21125181;DATABASE BUNDLE PATCH: 12.1.0.2.10 (21125181)
[oracle@node01 ~]$ ssh node02 “/u01/app/oracle/product/11.2.0.3/dbhome_1/OPatch/opatch lspatches -oh /u01/app/oracle/product/11.2.0.3/dbhome_1”
14201252; 19852361; 18906063;QUARTERLY CRS PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) (18906063) 21025813;QUARTERLY DATABASE PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) : (21025813)
[oracle@node01 ~]$ ssh node02 “/u01/app/12.1.0.2/grid/OPatch/opatch lspatches -oh /u01/app/12.1.0.2/grid”
20299018;ACFS Patch Set Update : 12.1.0.2.3 (20299018) 19872484;WLM Patch Set Update: 12.1.0.2.2 (19872484) 20831113;OCW Patch Set Update : 12.1.0.2.4 (20831113) 21125181;DATABASE BUNDLE PATCH: 12.1.0.2.10 (21125181)
[oracle@node01 ~]$ ssh node03 “/u01/app/oracle/product/11.2.0.3/dbhome_1/OPatch/opatch lspatches -oh /u01/app/oracle/product/11.2.0.3/dbhome_1”
14201252; 19852361; 18906063;QUARTERLY CRS PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) (18906063) 21025813;QUARTERLY DATABASE PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) : (21025813)
[oracle@node01 ~]$ ssh node03 “/u01/app/12.1.0.2/grid/OPatch/opatch lspatches -oh /u01/app/12.1.0.2/grid”
20299018;ACFS Patch Set Update : 12.1.0.2.3 (20299018) 19872484;WLM Patch Set Update: 12.1.0.2.2 (19872484) 20831113;OCW Patch Set Update : 12.1.0.2.4 (20831113) 21125181;DATABASE BUNDLE PATCH: 12.1.0.2.10 (21125181)
[oracle@node01 ~]$ ssh node04 “/u01/app/oracle/product/11.2.0.3/dbhome_1/OPatch/opatch lspatches -oh /u01/app/oracle/product/11.2.0.3/dbhome_1”
14201252; 19852361; 18906063;QUARTERLY CRS PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) (18906063) 21025813;QUARTERLY DATABASE PATCH FOR EXADATA (JUL 2015 - 11.2.0.3.28) : (21025813)
[oracle@node01 ~]$ ssh node04 “/u01/app/12.1.0.2/grid/OPatch/opatch lspatches -oh /u01/app/12.1.0.2/grid”
20299018;ACFS Patch Set Update : 12.1.0.2.3 (20299018) 19872484;WLM Patch Set Update: 12.1.0.2.2 (19872484) 20831113;OCW Patch Set Update : 12.1.0.2.4 (20831113) 21125181;DATABASE BUNDLE PATCH: 12.1.0.2.10 (21125181)
I know there is also dcli utility. However, when I last tried, it did not work; hence, took the path with least resistance.
May be I will blog about dcli utility one day.
