DATABASE PROACTIVE BUNDLE PATCH
Oracle started Bundle Patch from April2016 by renaming ‘Database Patch for Engineered Systems and Database In-Memory’ to “Database Proactive Bundle Patch”. These were originally limited to Windows and Exadata systems and now its available to Non-windows, Non-Exadata systems as well.
Bundle Patch (BP)
• a collection of fixes to address bugs in a given feature, product, or configuration
For example: Windows Database Bundle Patch, Database Patch for Exadata, Database Proactive Bundle Patch
• a superset of PSU
• may span multiple stack components
For example: “Database Patch for Exadata” includes fixes both Database and Grid Infrastructure
• As of April 2016, the Database Patch for Engineered Systems and Database In-Memory has been renamed to “Database Proactive Bundle Patch”
Database patch content for the various pro-active patch methods might be visualized like this:
BP
PSU
SPU
• SPU contains only the CPU program security fixes
• PSU contains the CPU program security fixes and additional high-impact/low-risk critical bug fixes
• BP includes all PSU fixes along with fixes targeted at the specific BP environment
Altering the Patching Method
If you wish to change between patching methods then you can do this when upgrading to a new Patch Set Release. For example, if you are on 12.1.0.1 using DB PSU you might then upgrade to 12.1.0.2 and start using “Database Proactive Bundle Patch” (DBBP) instead.
To change patching methods whilst staying on the same Patch Set Release / 4 field version you typically need to:
-Fully rollback the current method patch/es
-This may need you to rollback some interim patches too – make a note of any interim patches rolled back
-Apply / install the new method patch/es to at least the same CPU cycle
-Acquire and apply any interim patches required to maintain the same fixes as were in place before
-You cannot mix BP and DB PSU (or SPU) patching methods in the same ORACLE_HOME.
eg: If you install “Database Proactive Bundle Patch” on a system then you cannot subsequently install a later “Database PSU” (DB PSU) on top of that. You would need to stay on the DBBP path OR fully roll out the DBBP patches and apply DB PSU patches to switch patching methods.
Below are the steps for applying Patch 23273686: DATABASE PROACTIVE BUNDLE PATCH 12.1.0.2.160719 (JUL2016)
1. Download the patch 23273686 and unzip .
unzip p23273686_121020_SOLARIS64.zip
23144544
23520664
23054341
21436941
2. If PSU patch is exists, make sure to rollback the patch completely including the interim ones.
3. Check conflicts for all patches from GRID OWNER ( ROOT)
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ pwd /softdump/BUNDLEPATCH/23273686 oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/23144544 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /crsapp/app/oracle/product/12.1.0.2/grid12c Central Inventory : /crsapp/app/oracle/oraInventory from : /crsapp/app/oracle/product/12.1.0.2/grid12c/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatch/opatch2016-10-18_11-07-07AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/23520664 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /crsapp/app/oracle/product/12.1.0.2/grid12c Central Inventory : /crsapp/app/oracle/oraInventory from : /crsapp/app/oracle/product/12.1.0.2/grid12c/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatch/opatch2016-10-18_11-07-25AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/23054341 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /crsapp/app/oracle/product/12.1.0.2/grid12c Central Inventory : /crsapp/app/oracle/oraInventory from : /crsapp/app/oracle/product/12.1.0.2/grid12c/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatch/opatch2016-10-18_11-07-37AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/21436941 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /crsapp/app/oracle/product/12.1.0.2/grid12c Central Inventory : /crsapp/app/oracle/oraInventory from : /crsapp/app/oracle/product/12.1.0.2/grid12c/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatch/opatch2016-10-18_11-07-49AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
4. Now check conflict from ORACLE OWNER ( ORACLE)
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/23144544 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /oracle/app/oracle/product/12.1.0/dbhome Central Inventory : /crsapp/app/oracle/oraInventory from : /oracle/app/oracle/product/12.1.0/dbhome/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /oracle/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/opatch2016-10-18_11-08-02AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /softdump/BUNDLEPATCH/23273686/23520664 Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /oracle/app/oracle/product/12.1.0/dbhome Central Inventory : /crsapp/app/oracle/oraInventory from : /oracle/app/oracle/product/12.1.0/dbhome/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /oracle/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/opatch2016-10-18_11-08-18AM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
5. Check systemspace for GRID patch
oracle@dbhost1:~$ cat /tmp/patch_list_gihome.txt /softdump/BUNDLEPATCH/23273686/23144544 /softdump/BUNDLEPATCH/23273686/23520664 /softdump/BUNDLEPATCH/23273686/23054341 /softdump/BUNDLEPATCH/23273686/21436941
Please enter your choice: 1 +ASM1 oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_gihome.txt Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /crsapp/app/oracle/product/12.1.0.2/grid12c Central Inventory : /crsapp/app/oracle/oraInventory from : /crsapp/app/oracle/product/12.1.0.2/grid12c/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatch/opatch2016-10-18_11-09-20AM_1.log Invoking prereq "checksystemspace" Prereq "checkSystemSpace" passed. OPatch succeeded.
5. Check systemspace for ORACLE HOME patch
oracle@dbhost1:~$ cat /tmp/patch_list_dbhome.tx /softdump/BUNDLEPATCH/23273686/23144544 /softdump/BUNDLEPATCH/23273686/23520664
oracle@dbhost1:/softdump/BUNDLEPATCH/23273686$ $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_dbhome.tx Oracle Interim Patch Installer version 12.1.0.1.10 Copyright (c) 2016, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /oracle/app/oracle/product/12.1.0/dbhome Central Inventory : /crsapp/app/oracle/oraInventory from : /oracle/app/oracle/product/12.1.0/dbhome/oraInst.loc OPatch version : 12.1.0.1.10 OUI version : 12.1.0.2.0 Log file location : /oracle/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/opatch2016-10-18_11-10-23AM_1.log Invoking prereq "checksystemspace" Prereq "checkSystemSpace" passed. OPatch succeeded.
6. Now run opatchauto analyzer:( from root):
root@dbhost1:/crsapp/app/oracle/product/12.1.0.2/grid12c# cd OPatch/ root@dbhost1:/crsapp/app/oracle/product/12.1.0.2/grid12c/OPatch# ./opatchauto apply /softdump/BUNDLEPATCH/23273686 -analyze OPatch Automation Tool Copyright (c)2014, Oracle Corporation. All rights reserved. OPatchauto Version : 12.1.0.1.10 OUI Version : 12.1.0.2.0 Running from : /crsapp/app/oracle/product/12.1.0.2/grid12c opatchauto log file: /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatchauto/23273686/opatch_gi_2016-10-18_11-12-26_analyze.log NOTE: opatchauto is running in ANALYZE mode. There will be no change to your system. Parameter Validation: Successful Configuration Validation: Successful Patch Location: /softdump/BUNDLEPATCH/23273686 Grid Infrastructure Patch(es): 21436941 23054341 23144544 23520664 DB Patch(es): 23144544 23520664 Patch Validation: Successful Grid Infrastructure home: /crsapp/app/oracle/product/12.1.0.2/grid12c DB home(s): /oracle/app/oracle/product/12.1.0/dbhome Analyzing patch(es) on "/oracle/app/oracle/product/12.1.0/dbhome" ... Patch "/softdump/BUNDLEPATCH/23273686/23144544" successfully analyzed on "/oracle/app/oracle/product/12.1.0/dbhome" for apply. Patch "/softdump/BUNDLEPATCH/23273686/23520664" successfully analyzed on "/oracle/app/oracle/product/12.1.0/dbhome" for apply. Analyzing patch(es) on "/crsapp/app/oracle/product/12.1.0.2/grid12c" ... Patch "/softdump/BUNDLEPATCH/23273686/21436941" successfully analyzed on "/crsapp/app/oracle/product/12.1.0.2/grid12c" for apply. Patch "/softdump/BUNDLEPATCH/23273686/23054341" successfully analyzed on "/crsapp/app/oracle/product/12.1.0.2/grid12c" for apply. Patch "/softdump/BUNDLEPATCH/23273686/23144544" successfully analyzed on "/crsapp/app/oracle/product/12.1.0.2/grid12c" for apply. Patch "/softdump/BUNDLEPATCH/23273686/23520664" successfully analyzed on "/crsapp/app/oracle/product/12.1.0.2/grid12c" for apply. SQL changes, if any, are analyzed successfully on the following database(s): OMPREDB Apply Summary: Following patch(es) are successfully analyzed: GI Home: /crsapp/app/oracle/product/12.1.0.2/grid12c: 21436941,23054341,23144544,23520664 DB Home: /oracle/app/oracle/product/12.1.0/dbhome: 23144544,23520664 opatchauto succeeded.
7 . Create the response file :
root@dbhost1:~# export ORACLE_HOME=/crsapp/app/oracle/product/12.1.0.2/grid12c root@dbhost1:~# /crsapp/app/oracle/product/12.1.0.2/grid12c/OPatch/ocm/bin/emocmrsp -no_banner -output /softdump/BUNDLEPATCH/grid.rsp Provide your email address to be informed of security issues, install and initiate Oracle Configuration Manager. Easier for you if you use your My Oracle Support Email address/User Name. Visit http://www.oracle.com/support/policies.html for details. Email address/User Name: You have not provided an email address for notification of security issues. Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]: Y The OCM configuration response file (/softdump/BUNDLEPATCH/grid.rsp) was successfully created.
8. Run the opatchauto apply command:
root@dbhost1:/crsapp/app/oracle/product/12.1.0.2/grid12c/OPatch# ./opatchauto apply /softdump/BUNDLEPATCH/23273686 -ocmrf /softdump/BUNDLEPATCH/grid.rsp OPatch Automation Tool Copyright (c)2014, Oracle Corporation. All rights reserved. OPatchauto Version : 12.1.0.1.10 OUI Version : 12.1.0.2.0 Running from : /crsapp/app/oracle/product/12.1.0.2/grid12c opatchauto log file: /crsapp/app/oracle/product/12.1.0.2/grid12c/cfgtoollogs/opatchauto/23273686/opatch_gi_2016-10-18_11-38-40_deploy.log Parameter Validation: Successful Configuration Validation: Successful Patch Location: /softdump/BUNDLEPATCH/23273686 Grid Infrastructure Patch(es): 21436941 23054341 23144544 23520664 DB Patch(es): 23144544 23520664 Patch Validation: Successful Grid Infrastructure home: /crsapp/app/oracle/product/12.1.0.2/grid12c DB home(s): /oracle/app/oracle/product/12.1.0/dbhome Performing prepatch operations on CRS Home... Successful Applying patch(es) to "/oracle/app/oracle/product/12.1.0/dbhome" ... Patch "/softdump/BUNDLEPATCH/23273686/23144544" successfully applied to "/oracle/app/oracle/product/12.1.0/dbhome". Patch "/softdump/BUNDLEPATCH/23273686/23520664" successfully applied to "/oracle/app/oracle/product/12.1.0/dbhome". Applying patch(es) to "/crsapp/app/oracle/product/12.1.0.2/grid12c" ... Patch "/softdump/BUNDLEPATCH/23273686/21436941" successfully applied to "/crsapp/app/oracle/product/12.1.0.2/grid12c". Patch "/softdump/BUNDLEPATCH/23273686/23054341" successfully applied to "/crsapp/app/oracle/product/12.1.0.2/grid12c". Patch "/softdump/BUNDLEPATCH/23273686/23144544" successfully applied to "/crsapp/app/oracle/product/12.1.0.2/grid12c". Patch "/softdump/BUNDLEPATCH/23273686/23520664" successfully applied to "/crsapp/app/oracle/product/12.1.0.2/grid12c". Performing postpatch operations on CRS Home... Successful SQL changes, if any, are applied successfully on the following database(s): OMPREDB Apply Summary: Following patch(es) are successfully installed: GI Home: /crsapp/app/oracle/product/12.1.0.2/grid12c: 21436941,23054341,23144544,23520664 DB Home: /oracle/app/oracle/product/12.1.0/dbhome: 23144544,23520664 opatchauto succeeded.
ALL THE PATCHES NEED TO BE DONE ON ALL NODES OF CLUSTER .
NOTE: Before applying the patches on production boxes , thorough testing is required is required.
very useful!
We have a 12 node exadata machine in which every 2 nodes have a separate DB
i.e.on node1 and 2 DB1 is running (2 node RAC)
on node 3 and 4 DB2 is running (2 node RAC)
on node 5 and 6 DB3 is running (2 node RAC)
on node 7 and 8 DB4 is running (2 node RAC)
similarly on node 11 and 12 DB 6 is running.(2 node RAC)
Now there is an application upgrade which requires DB4 running on 07/08 to have certain DB patch. .
Can the patch(DBBP) be applied on nodes 7 and 8 excluding all other nodes.The reason why i am asking this question is path of ORACLE_HOME is same across the cluster as it should be (but not shared)..