Sunday, July 4, 2021

Oracle Database 19c -- How to Deploy a Release Update (DBRU)

Problem

You want to install the latest Release Update (DBRU) to an Oracle Home
 

Solution

This article assumes an installed Oracle Database 19c release.
 
1. Check the current versions of the database and installed release updates:

$ cd $ORACLE_HOME/OPatch
 
$ ./opatch lsinventory | grep "Oracle Database"
Oracle Database 19c                 19.0.0.0.0
 
$ ./opatch lsinventory | grep "Database Release Update"
Patch description:  "Database Release Update : 19.3.0.0.190416 (29517242)"
 
 
2. Take backup of $ORACLE_HOME and Central Inventory identified with /etc/oraInst.loc
 
 
3. Upgrade OPatch to the latest version:
 
Check OPatch version

$ cd $ORACLE_HOME/OPatch
$ ./opatch version
OPatch Version: 12.2.0.1.17


The latest OPatch version is available with Patch
6880880
 
Download p6880880_190000_Linux-x86-64.zip
 
Backup $ORACLE_HOME/OPatch
 
Delete current OPatch:

$ rm -rf $ORACLE_HOME/OPatch
 
Install new OPatch:

$ unzip -qqq p6880880_190000_Linux-x86-64.zip
$ cd OPatch
$ ./opatch version
OPatch Version: 12.2.0.1.25
 
 
4. Deploy the latest Release Update:
 
Identify and download the latest DBRU, as of this writing the latest is Patch 32545013 - Database Release Update 19.11.0.0.210420
 
Download p32545013_190000_Linux-x86-64.zip

Check for conflicts:

$ unzip -qqq p32545013_190000_Linux-x86-64.zip
$ cd 32545013
$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Prereq "checkConflictAgainstOHWithDetail" passed.

Apply DBRU 19.11:

$ /opt/oracle/product/19c/dbhome_1/OPatch/opatch apply
Patch 32545013 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [32545013].
OPatch succeeded. 
 
 
5. Load modified SQL files into each database running from the patched Oracle Home
 
$ cd $ORACLE_HOME/OPatch
$ ./datapatch -verbose
 
This step will be also required for each newly created database
 
 
6. Verify patch application with:
 
select * from dba_registry_sqlpatch;
 
The APPLY column should have status SUCCESS
 
 
7. Check for invalid objects and recompile as necessary:
 
SQL> @utlrp.sql


For reference:
  • OPatch: Behavior Changes starting in OPatch 12.2.0.1.5 and 11.2.0.3.14 releases (Doc ID 2161861.1)
  • Primary Note for Database Proactive Patch Program (Doc ID 888.1)
  • How to Perform ORACLE_HOME Backup? (Doc ID 565017.1)
  • FAQs on Central Inventory and Oracle Home Inventory (Local Inventory) in Oracle RDBMS (Doc ID 564192.1)   

No comments: