Anuj Singh Oracle DBA

Search This Blog

Total Pageviews

Saturday, 2 May 2026

Data Pump Bundle Patches DATAPUMP BUNDLE PATCH 19.31.0.0.0

Data Pump Bundle Patches DATAPUMP BUNDLE PATCH 19.31.0.0.0
============================================================
unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME/ export PATH=$ORACLE_HOME/OPatch:$PATH $ORACLE_HOME/OPatch/opatch version OPatch Version: 12.2.0.1.51 datapach version !!! OPatch succeeded.

# No need to shutdown the database #
Description DATAPUMP BUNDLE PATCH 19.31.0.0.0 Product Oracle Database Family Release Oracle Database 19.31.0.0.0 DBRU https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=39196236





[oracle@oracent19c ~]$ ls -lth p39196236_1931000DBRU_Generic.zip -rw-r--r--. 1 oracle oinstall 2.7M May 2 14:21 p39196236_1931000DBRU_Generic.zip [oracle@oracent19c ~]$ cd 39034528 [oracle@oracent19c 39034528]$ export PATH=$ORACLE_HOME/OPatch:$PATH [oracle@oracent19c 39034528]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_14-01-19PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded. [oracle@oracent19c 39034528]$ Description DATAPUMP BUNDLE PATCH 19.31.0.0.0 Product Oracle Database Family Release Oracle Database 19.31.0.0.0 DBRU export PATH=$ORACLE_HOME/OPatch:$PATH $ORACLE_HOME/OPatch/opatch version OPatch Version: 12.2.0.1.51 cd 39196236 [oracle@oracent19c 39196236]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_15-42-30PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded. [oracle@oracent19c 39196236]$ [oracle@oracent19c 39196236]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_15-42-30PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded. ==== apply !!!!!!!!!! [oracle@oracent19c 39196236]$ [oracle@oracent19c 39196236]$ opatch apply Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_15-43-44PM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 39196236 Do you want to proceed? [y|n] y User Responded with: Y All checks passed. Backing up files... Applying interim patch '39196236' to OH '/u01/app/oracle/product/19c/db_1' Patching component oracle.rdbms.dbscripts, 19.0.0.0.0... Patching component oracle.rdbms, 19.0.0.0.0... Patch 39196236 successfully applied. Log file location: /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_15-43-44PM_1.log OPatch succeeded. =============================== ./datapatch pwd /home/oracle/39196236 [oracle@oracent19c 39196236]$ cd $ORACLE_HOME/ [oracle@oracent19c db_1]$ cd OPatch/ [oracle@oracent19c OPatch]$ ./datapatch -verbose SQL Patching tool version 19.31.0.0.0 Production on Sat May 2 15:49:11 2026 Copyright (c) 2012, 2026, Oracle. All rights reserved. Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_19850_2026_05_02_15_49_11/sqlpatch_invocation.log Connecting to database...OK Gathering database info...done Note: Datapatch will only apply or rollback SQL fixes for PDBs that are in an open state, no patches will be applied to closed PDBs. Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation (Doc ID 1585822.1) Bootstrapping registry and package to current versions...done Determining current state...done Current state of interim SQL patches: Interim patch 39196236 (DATAPUMP BUNDLE PATCH 19.31.0.0.0): Binary registry: Installed PDB CDB$ROOT: Not installed PDB PDB$SEED: Not installed PDB VIHAAN: Not installed Current state of release update SQL patches: Binary registry: 19.31.0.0.0 Release_Update 260426152757: Installed PDB CDB$ROOT: Applied 19.31.0.0.0 Release_Update 260426152757 successfully on 02-MAY-26 14.56.22.830803 PDB PDB$SEED: Applied 19.31.0.0.0 Release_Update 260426152757 successfully on 02-MAY-26 15.22.20.360343 PDB VIHAAN: Applied 19.31.0.0.0 Release_Update 260426152757 successfully on 02-MAY-26 15.22.33.737706 Adding patches to installation queue and performing prereq checks...done Installation queue: For the following PDBs: CDB$ROOT PDB$SEED VIHAAN No interim patches need to be rolled back No release update patches need to be installed The following interim patches will be applied: 39196236 (DATAPUMP BUNDLE PATCH 19.31.0.0.0) Installing patches... Patch installation complete. Total patches installed: 3 Validating logfiles...done Patch 39196236 apply (pdb CDB$ROOT): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39196236/28705537/39196236_apply_ORCL_CDBROOT_2026May02_15_50_04.log (no errors) Patch 39196236 apply (pdb PDB$SEED): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39196236/28705537/39196236_apply_ORCL_PDBSEED_2026May02_15_56_54.log (no errors) Patch 39196236 apply (pdb VIHAAN): WITH ERRORS (RETRYABLE) logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39196236/28705537/39196236_apply_ORCL_VIHAAN_2026May02_15_56_54.log (errors) -> Error at line 4097: script rdbms/admin/dpload.sql - ORA-00604: error occurred at recursive SQL level 1 - ORA-00060: deadlock detected while waiting for resource Adding patches to retry installation queue...done Retry installation queue: For the following PDBs: VIHAAN No interim patches need to be rolled back No release update patches need to be installed The following interim patches will be applied: 39196236 (DATAPUMP BUNDLE PATCH 19.31.0.0.0) Installing patches... Patch installation complete. Total patches installed: 1 Validating logfiles...done Patch 39196236 apply (pdb VIHAAN): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39196236/28705537/39196236_apply_ORCL_VIHAAN_2026May02_16_15_56.log (no errors) SQL Patching tool complete on Sat May 2 16:25:29 2026 [oracle@oracent19c OPatch]$

 @?/rdbms/admin/utlrp.sql

====

[oracle@oracent19c ~]$ opatch lspatches 39196236;DATAPUMP BUNDLE PATCH 19.31.0.0.0 <<<<<<<<<<<<<<<<<<<<<<<< 39034528;Database Release Update : 19.31.0.0.260421 (39034528) 29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399) OPatch succeeded. ============== Readme [oracle@oracent19c ~]$ cd 39196236/ [oracle@oracent19c 39196236]$ ls -ltr total 28 -rw-rw-r--. 1 oracle oinstall 28585 Apr 29 15:21 README.txt drwxr-x---. 4 oracle oinstall 35 Apr 29 15:21 files drwxr-x---. 3 oracle oinstall 20 Apr 29 15:21 etc [oracle@oracent19c 39196236]$ cat README.txt Oracle Database 19 Release 19.31.0.0.260421DBRU ORACLE DATABASE Patch for Bug# 39196236 for Generic Platforms This patch is NOT RAC Rolling Installable. This patch is Data Guard Standby-First Installable - Please read My Oracle Support Note (KB137118) Oracle Patch Assurance - Data Guard Standby-First Patch Apply for details on how to remove risk and reduce downtime when applying this patch. https://support.oracle.com/support/?documentId=KB137118 Released: Wed Apr 29 12:34:38 2026 This document describes how you can install the ORACLE DATABASE overlay patch for bug# 39196236 on your Oracle Database 19 Release 19.31.0.0.260421DBRU Note: This patch can be applied without shutting down the Database Services. (I) Prerequisites -------------------- Before you install or deinstall the patch, ensure that you meet the following requirements: Note: In case of an Oracle RAC environment, meet these prerequisites on each of the nodes. 1. Ensure that the Oracle home on which you are installing the patch or from which you are rolling back the patch is Oracle Database 19 Release 19.31.0.0.260421DBRU. 2. Ensure that 19 Release 19.31.0.0.260421DBRU Patch Set Update (PSU) 39034528 is already applied on the Oracle Database. 3. Ensure that you have OPatch 19 Release 12.2.0.1.49 or higher. Oracle recommends that you use the latest version available for 19 Release 12.2.0.1.49. Note: If you do not have OPatch 19 Release 12.2.0.1.49 or the latest version available for 19 Release 12.2.0.1.49, then download it from patch# 6880880 for 12.2.0.1.49. For information about OPatch documentation, including any known issues, see My Oracle Support Document (KB151684) Latest Version of OPatch(6880880) https://support.oracle.com/support/?documentId=KB151684 4. Ensure that you set (as the home user) the ORACLE_HOME environment variable to the Oracle home. 5. Ensure that the $PATH definition has the following executables: make, ar, ld and nm. The location of these executables depends on your operating system. On many operating systems, they are located in /usr/ccs/bin. 6. Ensure that you verify the Oracle Inventory because OPatch accesses it to install the patches. To verify the inventory, run the following command. $ opatch lsinventory Note: - If this command succeeds, it will list the Top-Level Oracle Products and one-off patches if any that are installed in the Oralce Home. - Save the output so you have the status prior to the patch apply. - If the command displays some errors, then contact Oracle Support and resolve the issue first before proceeding further. 7. (Only for Installation) Maintain a location for storing the contents of the patch ZIP file. In the rest of the document, this location (absolute path) is referred to as <PATCH_TOP_DIR>. Extract the contents of the patch ZIP file to the location (PATCH_TOP_DIR) you have created above. To do so, run the following command: $ unzip -d <PATCH_TOP_DIR> p39196236_1931000DBRU_Generic.zip 8. (Only for Installation) Determine whether any currently installed interim patches conflict with this patch 39196236 as shown below: $ cd <PATCH_TOP_DIR>/39196236 $ opatch prereq CheckConflictAgainstOHWithDetail -ph ./ The report will indicate the patches that conflict with this patch and the patches for which the current 39196236 is a superset. Note: When OPatch starts, it validates the patch and ensures that there are no conflicts with the software already installed in the ORACLE_HOME. OPatch categorizes conflicts into the following types: - Conflicts with a patch already applied to the ORACLE_HOME that is a subset of the patch you are trying to apply - In this case, continue with the patch installation because the new patch contains all the fixes from the existing patch in the ORACLE_HOME. The subset patch will automatically be rolled back prior to the installation of the new patch. - Conflicts with a patch already applied to the ORACLE_HOME - In this case, stop the patch installation and contact Oracle Support Services. 10. None (II) Installation ----------------- To install the patch, follow these steps: 1. Set your current directory to the directory where the patch is located and then run the OPatch utility by entering the following commands: $ cd <PATCH_TOP_DIR>/39196236 $ opatch apply 2. Verify whether the patch has been successfully installed by running the following command: $ opatch lsinventory (III) Postinstallation --------------------- 1. Navigate to the <ORACLE_HOME>/OPatch directory: $ cd <ORACLE_HOME>/OPatch 2. Install the SQL portion of the patch by running the following command: $ datapatch 3. Start sqlplus and run the utlrp.sql to clear the invalids only if dpload.sql is a part of the patch SQL> @?/rdbms/admin/utlrp.sql Note: For a RAC environment, perform these steps on only one node. (IV) Deinstallation ---------------------- Ensure to follow the Prerequsites (Section I). To deinstall the patch, follow these steps: 1. Deinstall the patch by running the following command: $ opatch rollback -id 39196236 2. Ensure that you verify the Oracle Inventory and compare the output with the one run before the patch installation and re-apply any patches that were rolled back as part of this patch apply. To verify the inventory, run the following command: $ opatch lsinventory (V) Postdeinstallation ----------------------- 1. Navigate to the <ORACLE_HOME>/OPatch directory: $ cd <ORACLE_HOME>/OPatch 2. Deinstall the SQL portion of the patch by running the following command: $ datapatch 3. Start sqlplus and run the utlrp.sql to clear the invalids only if dpload.sql is a part of the patch SQL> @?/rdbms/admin/utlrp.sql

Patch 39034528 - Database Release Update 19.31.0.0.260421


Patch 39034528 - Database Release Update 19.31.0.0.260421





OPATCH PLACEHOLDER <Patch 6880880>

 

How to install Opatch utility ?

1. Download the latest Opatch utility
     Search for Patch 6880880 in MOS or from the URL
     https://updates.oracle.com/download/6880880.html
2. Take a backup of older version of OPatch utility under $ORACLE_HOME and unzip the downloaded file

cd $ORACLE_HOME 
mv OPatch OPatch.bkp 
unzip <download directory>/p6880880_<version>_<platform>.zip 
cd OPatch 
./opatch version


DescriptionOPatch 12.2.0.1.51 for DB 19.0.0.0.0 (Apr 2026)
ProductOracle Global Lifecycle Management OPatch

unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME/ export PATH=$ORACLE_HOME/OPatch:$PATH $ORACLE_HOME/OPatch/opatch version OPatch Version: 12.2.0.1.51 OPatch succeeded.


[oracle@oracent19c 39034528]$ [oracle@oracent19c 39034528]$ export PATH=$ORACLE_HOME/OPatch:$PATH [oracle@oracent19c 39034528]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_14-01-19PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.


=====

pwd /home/oracle/39034528 [oracle@oracent19c 39034528]$ opatch apply Oracle Interim Patch Installer version 12.2.0.1.51 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /u01/app/oracle/product/19c/db_1 Central Inventory : /u01/app/oraInventory from : /u01/app/oracle/product/19c/db_1/oraInst.loc OPatch version : 12.2.0.1.51 OUI version : 12.2.0.7.0 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_14-03-39PM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 39034528 Do you want to proceed? [y|n] y User Responded with: Y y All checks passed. Please shutdown Oracle instances running out of this ORACLE_HOME on the local system. (Oracle Home = '/u01/app/oracle/product/19c/db_1') Is the local system ready for patching? [y|n] User Responded with: Y Backing up files... Applying interim patch '39034528' to OH '/u01/app/oracle/product/19c/db_1' ApplySession: Optional component(s) [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.datamining, 19.0.0.0.0 ] , [ oracle.java.sqlj.sqljruntime, 19.0.0.0.0 ] , [ oracle.crypto.rsf, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.pg4appc, 19.0.0.0.0 ] , [ oracle.pg4mq, 19.0.0.0.0 ] , [ oracle.precomp.companion, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.sdo.companion, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.rdbms.tg4ifmx, 19.0.0.0.0 ] , [ oracle.oid.client, 19.0.0.0.0 ] , [ oracle.rdbms.tg4sybs, 19.0.0.0.0 ] , [ oracle.ldap.ztk, 19.0.0.0.0 ] , [ oracle.ons.eons.bwcompat, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.ons.cclient, 19.0.0.0.0 ] , [ oracle.xdk.companion, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.rdbms.tg4msql, 19.0.0.0.0 ] , [ oracle.rdbms.tg4tera, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.options.olap.api, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] , [ oracle.jdk, 1.8.0.391.11 ] not present in the Oracle Home or a higher version is found. Patching component oracle.rdbms.util, 19.0.0.0.0... Patching component oracle.rdbms.rsf, 19.0.0.0.0... Patching component oracle.rdbms, 19.0.0.0.0... Patching component oracle.assistants.acf, 19.0.0.0.0... Patching component oracle.assistants.deconfig, 19.0.0.0.0... Patching component oracle.assistants.server, 19.0.0.0.0... Patching component oracle.blaslapack, 19.0.0.0.0... Patching component oracle.buildtools.rsf, 19.0.0.0.0... Patching component oracle.wwg.plsql, 19.0.0.0.0... Patching component oracle.ctx, 19.0.0.0.0... Patching component oracle.dbdev, 19.0.0.0.0... Patching component oracle.dbjava.ic, 19.0.0.0.0... Patching component oracle.dbjava.jdbc, 19.0.0.0.0... Patching component oracle.dbjava.ucp, 19.0.0.0.0... Patching component oracle.duma, 19.0.0.0.0... Patching component oracle.javavm.client, 19.0.0.0.0... Patching component oracle.ldap.client, 19.0.0.0.0... Patching component oracle.ldap.owm, 19.0.0.0.0... Patching component oracle.ldap.rsf, 19.0.0.0.0... Patching component oracle.ldap.security.osdt, 19.0.0.0.0... Patching component oracle.marvel, 19.0.0.0.0... Patching component oracle.network.rsf, 19.0.0.0.0... Patching component oracle.nlsrtl.rsf, 19.0.0.0.0... Patching component oracle.nlsrtl.rsf.core, 19.0.0.0.0... Patching component oracle.nlsrtl.rsf.ic, 19.0.0.0.0... Patching component oracle.odbc.ic, 19.0.0.0.0... Patching component oracle.ons, 19.0.0.0.0... Patching component oracle.ons.ic, 19.0.0.0.0... Patching component oracle.oracore.rsf, 19.0.0.0.0... Patching component oracle.perlint, 5.28.1.0.0... Patching component oracle.precomp.common.core, 19.0.0.0.0... Patching component oracle.precomp.rsf, 19.0.0.0.0... Patching component oracle.rdbms.crs, 19.0.0.0.0... Patching component oracle.rdbms.dbscripts, 19.0.0.0.0... Patching component oracle.rdbms.deconfig, 19.0.0.0.0... Patching component oracle.rdbms.install.common, 19.0.0.0.0... Patching component oracle.rdbms.oci, 19.0.0.0.0... Patching component oracle.rdbms.rsf.ic, 19.0.0.0.0... Patching component oracle.rdbms.scheduler, 19.0.0.0.0... Patching component oracle.rhp.db, 19.0.0.0.0... Patching component oracle.rsf, 19.0.0.0.0... Patching component oracle.sdo, 19.0.0.0.0... Patching component oracle.sdo.locator.jrf, 19.0.0.0.0... Patching component oracle.sqlj.sqljruntime, 19.0.0.0.0... Patching component oracle.sqlplus, 19.0.0.0.0... Patching component oracle.sqlplus.ic, 19.0.0.0.0... Patching component oracle.tfa.db, 19.0.0.0.0... Patching component oracle.wwg.plsql, 19.0.0.0.0... Patching component oracle.xdk.rsf, 19.0.0.0.0... Patching component oracle.rdbms.hs_common, 19.0.0.0.0... Patching component oracle.javavm.server, 19.0.0.0.0... Patching component oracle.rdbms.install.plugins, 19.0.0.0.0... Patching component oracle.rdbms.locator, 19.0.0.0.0... Patching component oracle.oraolap.api, 19.0.0.0.0... Patching component oracle.rdbms.hsodbc, 19.0.0.0.0... Patching component oracle.network.client, 19.0.0.0.0... Patching component oracle.rdbms.drdaas, 19.0.0.0.0... Patching component oracle.rdbms.dm, 19.0.0.0.0... Patching component oracle.rdbms.rman, 19.0.0.0.0... Patching component oracle.rdbms.rat, 19.0.0.0.0... Patching component oracle.ovm, 19.0.0.0.0... Patching component oracle.odbc, 19.0.0.0.0... Patching component oracle.xdk.server, 19.0.0.0.0... Patching component oracle.oraolap.dbscripts, 19.0.0.0.0... Patching component oracle.xdk.xquery, 19.0.0.0.0... Patching component oracle.network.listener, 19.0.0.0.0... Patching component oracle.dbtoolslistener, 19.0.0.0.0... Patching component oracle.ldap.rsf.ic, 19.0.0.0.0... Patching component oracle.xdk.parser.java, 19.0.0.0.0... Patching component oracle.sdo.locator, 19.0.0.0.0... Patching component oracle.ctx.rsf, 19.0.0.0.0... Patching component oracle.ldap.ssl, 19.0.0.0.0... Patching component oracle.oraolap, 19.0.0.0.0... Patching component oracle.mgw.common, 19.0.0.0.0... Patching component oracle.install.deinstalltool, 19.0.0.0.0... Patching component oracle.rdbms.dv, 19.0.0.0.0... Patching component oracle.xdk, 19.0.0.0.0... Patching component oracle.nlsrtl.rsf.lbuilder, 19.0.0.0.0... Patching component oracle.ctx.atg, 19.0.0.0.0... Patching component oracle.network.aso, 19.0.0.0.0... Patching component oracle.rdbms.lbac, 19.0.0.0.0... Patching component oracle.precomp.lang, 19.0.0.0.0... Patching component oracle.precomp.common, 19.0.0.0.0... Patching component oracle.jdk, 1.8.0.201.0... Patch 39034528 successfully applied. Sub-set patch [29517242] has become inactive due to the application of a super-set patch [39034528]. Please refer to Doc ID 2161861.1 for any possible further required actions. Log file location: /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_14-03-39PM_1.log OPatch succeeded.

SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 VIHAAN MOUNTED SQL> alter pluggable database VIHAAN open; Pluggable database altered. SQL>

SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 VIHAAN READ WRITE NO SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.31.0.0.0 [oracle@oracent19c 39034528]$ cd cd $ORACLE_HOME/OPatch^C [oracle@oracent19c 39034528]$ cd $ORACLE_HOME/OPatch [oracle@oracent19c OPatch]$ ./datapatch -sanity_checks SQL Patching sanity checks version 19.31.0.0.0 on Sat 02 May 2026 14:31:11 BST Copyright (c) 2021, 2026, Oracle. All rights reserved. Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20260502_143111_13342/sanity_checks_20260502_143111_13342.log Running checks JSON report generated in /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20260502_143111_13342/sqlpatch_sanity_checks_summary.json file Checks completed. Printing report: Check: Database component status - INFO There should be no INVALID components prior patching due to risk of potential errors. Listed components have a non-valid status. For INVALID components: Run '?/rdbms/admin/utlrp.sql' (per container) to try recompiling invalid objects and restore component status. For other non-valid status, depending on patch content warnings may be returned. PDB$SEED: | COMPONENT | STATUS | |-----------+---------| | SDO | INVALID | |-----------+---------| Check: PDB Violations - OK Check: Invalid System Objects - WARNING There should be no invalid objects in Oracle-maintained schemas before patching. The following number of objects are invalid (per container). Run '?/rdbms/admin/utlrp.sql' (per container) to try recompiling invalid objects. For more details please review /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20260502_143111_13342/sqlpatch_sanity_checks_invalid_objects.log file. PDB$SEED: | OWNER | OBJ_CNT | |-------+---------| | MDSYS | 7 | |-------+---------| Check: Tablespace Status - OK Check: Backup jobs - OK Check: Temp file exists - OK Check: Temp file online - OK Check: Data Pump running - OK Check: Container status - OK Check: Oracle Database Keystore - OK Check: Dictionary statistics gathering - WARNING Patching the database without recent data dictionary statistics gathered may lead to performance issues. Data dictionary statistics are older than 7 days. Run the following queries to start gathering the dictionary statistics: EXEC DBMS_STATS.GATHER_DICTIONARY_STATS; EXEC DBMS_SYSTEM.GATHER_FIXED_OBJECTS_STATS; Refer to MOS 457926.1 for more details. PDB$SEED: | LATEST | OPERATION | STATUS | |-----------------+-------------------------+-----------| | 17-APR-19 02:03 | gather_dictionary_stats | COMPLETED | |-----------------+-------------------------+-----------| Check: Scheduled Jobs - OK Check: GoldenGate triggers - OK Check: Logminer DDL triggers - OK Check: Check sys public grants - OK Check: Statistics gathering running - OK Check: Optim dictionary upgrade parameter - OK Check: Symlinks on oracle home path - OK Check: Central Inventory - OK Check: Java Virtual Machine Enable - OK Check: Oracle Database Vault Enabled - OK Check: Queryable Inventory database directories - OK Check: Queryable Inventory locks - OK Check: Queryable Inventory package - OK Check: Queryable Inventory external table - OK Check: Imperva processes - OK Check: Guardium processes - OK Check: Locale - OK Refer to MOS Note 2975965.1 and debug log /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20260502_143111_13342/sanity_checks_debug_20260502_143111_13342.log SQL Patching sanity checks completed on Sat 02 May 2026 14:31:20 BST [oracle@oracent19c OPatch]$ ./datapatch -verbose SQL Patching tool version 19.31.0.0.0 Production on Sat May 2 14:32:02 2026 Copyright (c) 2012, 2026, Oracle. All rights reserved. Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_13415_2026_05_02_14_32_02/sqlpatch_invocation.log Connecting to database...OK Gathering database info...done Note: Datapatch will only apply or rollback SQL fixes for PDBs that are in an open state, no patches will be applied to closed PDBs. Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation (Doc ID 1585822.1) Bootstrapping registry and package to current versions...done Determining current state...done Current state of interim SQL patches: No interim patches found Current state of release update SQL patches: Binary registry: 19.31.0.0.0 Release_Update 260426152757: Installed PDB CDB$ROOT: Applied 19.3.0.0.0 Release_Update 190410122720 successfully on 16-AUG-23 16.55.46.884079 PDB PDB$SEED: Applied 19.3.0.0.0 Release_Update 190410122720 successfully on 16-AUG-23 17.01.23.623197 PDB VIHAAN: Applied 19.3.0.0.0 Release_Update 190410122720 successfully on 16-AUG-23 17.01.23.623197 Adding patches to installation queue and performing prereq checks...done Installation queue: For the following PDBs: CDB$ROOT PDB$SEED VIHAAN No interim patches need to be rolled back Patch 39034528 (Database Release Update : 19.31.0.0.260421 (39034528)): Apply from 19.3.0.0.0 Release_Update 190410122720 to 19.31.0.0.0 Release_Update 260426152757 No interim patches need to be applied WARNING: Following components are NOT in a valid state. This could cause patching failure. If it does, consider running utlrp.sql to bring components to VALID state. Then, re-run datapatch. PDB$SEED : SDO [INVALID] Installing patches... Patch installation complete. Total patches installed: 3 Validating logfiles...done Patch 39034528 apply (pdb CDB$ROOT): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39034528/28700584/39034528_apply_ORCL_CDBROOT_2026May02_14_35_02.log (no errors) Patch 39034528 apply (pdb PDB$SEED): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39034528/28700584/39034528_apply_ORCL_PDBSEED_2026May02_14_57_10.log (no errors) Patch 39034528 apply (pdb VIHAAN): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39034528/28700584/39034528_apply_ORCL_VIHAAN_2026May02_14_57_12.log (no errors) SQL Patching tool complete on Sat May 2 15:25:26 2026


[oracle@oracent19c OPatch]$ opatch lsinventory | grep -E "(^Patch.*applied)|(^Sub-patch)" Patch 39034528 : applied on Sat May 02 14:17:50 BST 2026 Patch 29585399 : applied on Thu Apr 18 08:21:33 BST 2019 [oracle@oracent19c OPatch]$


select * from dba_registry_history; select substr(comp_id,1,15) comp_id, substr(comp_name,1,30) comp_name, substr(version,1,10) version, status from dba_registry order by modified; select * from sys.registry$history; col COMP_NAME for a50 set lines 200 col action_time for a30 col comments for a30 col ACTION for a15 select action_time, action,namespace, version, id, bundle_series, comments from registry$history; select action_time, action, version, id, comments from dba_registry_history order by action_time; select COMMENTS, ACTION_TIME from sys.registry$history; select COMP_NAME, VERSION, STATUS from dba_registry;

ACTION_TIME ACTION NAMESPACE VERSION ID COMMENTS BUNDLE_SERIES ------------------------------ --------------- ------------------------------ ------------------------------ ---------- ------------------------------ ------------------------------ BOOTSTRAP DATAPATCH 19 RDBMS_19.31.0.0.0DBRU_LINUX.X6 4_260424.1 16-AUG-23 16.55.41.456374 RU_APPLY SERVER 19.0.0.0.0 Patch applied on 19.3.0.0.0: R elease_Update - 190410122720 02-MAY-26 14.56.22.865141 RU_APPLY SERVER 19.0.0.0.0 Patch applied from 19.3.0.0.0 to 19.31.0.0.0: Release_Update - 260426152757 SQL> COMP_ID COMP_NAME VERSION STATUS ------------------------------------------------------------ -------------------------------------------------- ---------------------------------------- -------------------------------------------- SDO Spatial 19.0.0.0.0 LOADING XOQ Oracle OLAP API 19.0.0.0.0 VALID CATPROC Oracle Database Packages and T 19.0.0.0.0 VALID CATALOG Oracle Database Catalog Views 19.0.0.0.0 VALID CATJAVA Oracle Database Java Packages 19.0.0.0.0 VALID XML Oracle XDK 19.0.0.0.0 VALID JAVAVM JServer JAVA Virtual Machine 19.0.0.0.0 VALID XDB Oracle XML Database 19.0.0.0.0 VALID CONTEXT Oracle Text 19.0.0.0.0 VALID OWM Oracle Workspace Manager 19.0.0.0.0 VALID ORDIM Oracle Multimedia 19.0.0.0.0 VALID COMP_ID COMP_NAME VERSION STATUS ------------------------------------------------------------ -------------------------------------------------- ---------------------------------------- -------------------------------------------- APS OLAP Analytic Workspace 19.0.0.0.0 VALID OLS Oracle Label Security 19.0.0.0.0 VALID DV Oracle Database Vault 19.0.0.0.0 VALID RAC Oracle Real Application Cluste 19.0.0.0.0 OPTION OFF 15 rows selected. SQL> ACTION_TIME ACTION NAMESPACE VERSION ID COMMENTS BUNDLE_SERIES ------------------------------ --------------- ------------------------------ ------------------------------ ---------- ------------------------------ ------------------------------ BOOTSTRAP DATAPATCH 19 RDBMS_19.31.0.0.0DBRU_LINUX.X6 4_260424.1 16-AUG-23 16.55.41.456374 RU_APPLY SERVER 19.0.0.0.0 Patch applied on 19.3.0.0.0: R elease_Update - 190410122720 02-MAY-26 14.56.22.865141 RU_APPLY SERVER 19.0.0.0.0 Patch applied from 19.3.0.0.0 to 19.31.0.0.0: Release_Update - 260426152757 SQL> SQL> SQL> SQL> SQL> SQL> SQL> ACTION_TIME ACTION NAMESPACE VERSION ID BUNDLE_SERIES COMMENTS ------------------------------ --------------- ------------------------------ ------------------------------ ---------- ------------------------------ ------------------------------ BOOTSTRAP DATAPATCH 19 RDBMS_19.31.0.0.0DBRU_LINUX.X6 4_260424.1 16-AUG-23 16.55.41.456374 RU_APPLY SERVER 19.0.0.0.0 Patch applied on 19.3.0.0.0: R elease_Update - 190410122720 02-MAY-26 14.56.22.865141 RU_APPLY SERVER 19.0.0.0.0 Patch applied from 19.3.0.0.0 to 19.31.0.0.0: Release_Update - 260426152757 SQL> ACTION_TIME ACTION VERSION ID COMMENTS ------------------------------ --------------- ------------------------------ ---------- ------------------------------ 16-AUG-23 16.55.41.456374 RU_APPLY 19.0.0.0.0 Patch applied on 19.3.0.0.0: R elease_Update - 190410122720 02-MAY-26 14.56.22.865141 RU_APPLY 19.0.0.0.0 Patch applied from 19.3.0.0.0 to 19.31.0.0.0: Release_Update - 260426152757 BOOTSTRAP 19 RDBMS_19.31.0.0.0DBRU_LINUX.X6 4_260424.1 SQL> COMMENTS ACTION_TIME ------------------------------ ------------------------------ RDBMS_19.31.0.0.0DBRU_LINUX.X6 4_260424.1 Patch applied on 19.3.0.0.0: R 16-AUG-23 16.55.41.456374 elease_Update - 190410122720 Patch applied from 19.3.0.0.0 02-MAY-26 14.56.22.865141 to 19.31.0.0.0: Release_Update - 260426152757


[oracle@oracent19c OPatch]$ opatch lsinventory |grep -i "Database Release Update" Patch description: "Database Release Update : 19.31.0.0.260421 (39034528)" [oracle@oracent19c OPatch]$
opatch lsinventory |grep -i "Database Release Update" Patch description: "Database Release Update : 19.31.0.0.260421 (39034528)" [oracle@oracent19c OPatch]$ [oracle@oracent19c OPatch]$

[oracle@oracent19c OPatch]$ opatch lsinventory |grep -i "Patch" Oracle Interim Patch Installer version 12.2.0.1.51 OPatch version : 12.2.0.1.51 Log file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2026-05-02_15-36-25PM_1.log Lsinventory Output file location : /u01/app/oracle/product/19c/db_1/cfgtoollogs/opatch/lsinv/lsinventory2026-05-02_15-36-25PM.txt Interim patches (2) : Patch 39034528 : applied on Sat May 02 14:17:50 BST 2026 Unique Patch ID: 28700584 Patch description: "Database Release Update : 19.31.0.0.260421 (39034528)" Patch 29585399 : applied on Thu Apr 18 08:21:33 BST 2019 Unique Patch ID: 22840393 Patch description: "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)" OPatch succeeded.



Patch 39034528 - Database Release Update 19.31.0.0.260421

This document is accurate at the time of release. For any changes and additional information regarding Database Release Update 19.31.0.0.260421, see these related documents that are available at My Oracle Support (http://support.oracle.com/):

  • Document KB869205 Oracle DB/GI/OJVM Update/Revision R19 Apr 2026 Known Issues

  • Document KB188772 Oracle Database 19c and Oracle AI Database 26ai Important Recommended One-off Patches

  • Document KB106822 Primary Note for Database Quarterly Release Updates

  • Document KA19 19c Database Upgrade - Self Guided Assistance with Best Practices

This document includes the following sections:

1 Patch Information

  • Database Release Update 19.31.0.0.260421 patches are cumulative. That is, the content of all previous Database bundles is included in the latest Database bundle patch.

  • To install the Database Release Update 19.31.0.0.260421 patch, the Oracle home must have Oracle Database release 19c installed.

  • This patch is Oracle RAC Rolling Installable.

  • This patch is Database Vault installable. See My Oracle Support document KB653211 Primary Note For Oracle Database Vault for details on how to apply this patch to a Database Vault environment.

  • This patch is Data Guard Standby-First Installable. See My Oracle Support document KB137118 Oracle Patch Assurance - Data Guard Standby-First Patch Apply for details on how to remove risk and reduce downtime when applying this patch.

  • This patch includes the JDK fixes released in the prior cycle and will update the JDK in the Oracle home. For the most recent JDK fixes, a separate patch is available and needs to be installed in addition to this patch. See My Oracle Support document KB106822 Primary Note for Database Quarterly Release Updates for the JDK patch number.

  • Beginning with 19.27 Apr2025 DBRU, Small Pages are not allowed for RDBMS SGA in Exadata. See My Oracle Support Document KB174916 for more details.

  • Beginning with 19.21 Oct2023 RU, the UTL_URI.ESCAPE function is now compliant with RFC 3896 and will treat "#" as a reserved character. See My Oracle Support Document PALRT1208 for more details.

  • Beginning with 19.22 Jan2024 RU, the 19c database is now certified on Oracle Linux 9.x and RHEL9.x.

  • Beginning with 19.18 Jan2023 RU, the DBRU contains the CORE DST Time Zone patches. Applying this Release Update (RU) does not change the DST version in any of your databases. The DST patches are only copied into $ORACLE_HOME/oracore/zoneinfo and no DST upgrade is performed. You can decide to upgrade the DST version in your database to a newer DST version independently of applying the RU at any time. Be aware that this incurs downtime.

    • You can decide to upgrade the DST version in your database to a newer DST version independently of applying the RU at any time. Be aware that this incurs downtime.

    • If you plan to adjust the DST version of your databases, Oracle recommends adjusting it to the latest available DST version. Follow the instructions in the Oracle 19c Oracle Database Upgrade Guide. For more information on various DST patch releases, see My Oracle Support document KB151444 Primary Note DST FAQ: Updated DST Transitions and New Time Zones in Oracle RDBMS and OJVM Time Zone File Patches.

    This DBRU contains the following CORE DST patches:

    Patch NumbersPatches
    28852325DSTV33 UPDATE - TZDATA2018G
    29997937DSTV34 UPDATE - TZDATA2019B
    31335037DSTV35 UPDATE - TZDATA2020A
    32327201DSTV36 UPDATE - TZDATA2020E
    33613829DSTV37 UPDATE - TZDATA2021E
    34006614DSTV38 UPDATE - TZDATA2022A
    34533061DSTV39 UPDATE - TZDATA2022C
    34698179DSTV40 UPDATE - TZDATA2022E
    35099667DSTV41 UPDATE - TZDATA2022G
    35220732DSTV42 UPDATE - TZDATA2023C
    36260493DSTV43 UPDATE - TZDATA2024A
    37537949DSTV44 UPDATE - TZDATA2025A
  • Any new or changed database initialization parameters that might be included into a quarterly patch bundle would be documented in the Oracle Database Reference manual section on initialization parameters. For Oracle Database 19c, see Oracle Database Reference.

  • For the latest Update with Security Fixes that should be used on Client-Only installations, see the Critical Patch Update (CPU) Program Patch Availability Document (PAD) section on the Oracle Database, for the cycle in which you are interested.

  • Applying Database Release Update Database Release Update 19.31.0.0.260421 with Oracle JavaVM 19.x Updates

    • For customers who want to install both patches together during a single downtime window, follow one of the Patching Options listed in the My Oracle Support document:
      • KB139124 - Oracle Recommended Patches - "Oracle JavaVM Component Database PSU and Update" (OJVM PSU and OJVM Update) Patches.
    • The Oracle JavaVM 19.x Release Update is available as a separate patch. That separate patch has some additional requirements if it is to be installed in a RAC Rolling fashion, as detailed in My Oracle Support document:
      • KB137197 - RAC Rolling Install Process for the "Oracle JavaVM Component Database PSU/RU" (OJVM PSU/RU) Patches.

2 Prerequisites

It is highly recommended to take a backup of the Oracle_Home binaries and Central Inventory prior to applying patches. For further information, see My Oracle Support document KB137807 How to Perform ORACLE_HOME Backup?.

For SUSE Linux Enterprise Server (SLES) 15 SP3, and above, install the compat-libpthread-nonshared package. See section 5.5.12 in SUSE's release notes (for SLES 15 SP3) and Note KB117927.

This section includes the following section:

2.1 OPatch Utility

You must use the OPatch utility version 12.2.0.1.49 or later to apply this patch. Oracle recommends that you use the latest released OPatch version for 19c, which is available for download from My Oracle Support patch 6880880 by selecting "OPatch for DB 19.0.0.0.0" from the Select a Release dropdown. It is recommended that you download the OPatch utility and the patch in a shared location to be able to access them from any node in the cluster for the patch application on each node.

When patching the GI home, a shared locaton on Oracle ACFS only needs to be unmounted on the node where the GI home is being patched.

The new OPatch utility should be updated in all of the Oracle RAC database homes and the GI home that are being patched.

For each Oracle RAC database home and the GI home that are being patched, as the home owner, extract the OPatch utility.

For exact instructions to install OPatch, follow the OPatch readme.

A new feature has been added to OPatch to increase performance by deleting inactive patches. See My Oracle Support document KB104015 OPatch 12.2.0.1.37+ Introduces a New Feature to Delete Inactive Patches in the ORACLE_HOME/.patch_storage directory.

For information about OPatch documentation, including any known issues, see My Oracle Support document KB133615 Primary Note For OPatch.

3 Installation

These instructions are for all Oracle Database installations.

3.1 Patch Pre-Installation Instructions

Before you install Database Release Update 19.31.0.0.260421, perform the following actions to check the environment and to detect and resolve any interim patch conflicts.

3.1.1 Environments with Grid Infrastructure

This patch is not to be installed to an environment that has a Grid Infrastructure home. See the following My Oracle Support document KB106822 to determine the appropriate Grid infrastructure patch to be installed.

3.1.2 Environment Checks

  1. Ensure that the $PATH definition has the following executables: makearld, and nm.

    The location of these executables depends on your operating system. On many operating systems, they are located in /usr/ccs/bin, in which case you can set your PATH definition as follows:

    export PATH=$PATH:/usr/ccs/bin
    

3.1.3 Interim Patch Conflict Detection and Resolution

The fastest and easiest way to determine whether you have interim patches in the Oracle home that conflict with Database Release Update 19.31.0.0.260421, and to get the necessary conflict resolution patches, is to use the Patch Recommendations and Patch Plans features on the Patches & Updates tab in My Oracle Support.

However, if you are not using My Oracle Support Patch Plans, the My Oracle Support Conflict Checker tool enables you to upload an OPatch inventory and check the patches that you want to apply to your environment for conflicts.

If no conflicts are found, you can download the patches. If conflicts are found, the tool finds an existing resolution to download. If no resolution is found, it will automatically request a resolution, which you can monitor in the Plans and Patch Requests region of the Patches & Updates tab.

For more information, see Knowledge Document KB135057 How to Use the My Oracle Support Conflict Checker Tool for Patches Installed with OPatch.

Or, use the following steps to manually discover conflicts and resolutions:

  1. Determine whether any currently installed interim patches conflict with the patch being installed, 39034528:

    StepCommand
    1.
    unzip p39034528_<version>_<platform>.zip
    2.
    cd 39034528
    3.
    opatch prereq CheckConflictAgainstOHWithDetail -ph ./
  2. The report indicates the patches that conflict and the patches that are a superset.

  3. Use My Oracle Support document KB145571 Database Patch Conflict Resolution to determine, for each conflicting patch, whether a conflict resolution patch is already available, and if you need to request a new conflict resolution patch or if the conflict may be ignored.

  4. When all the interim patches that you have requested are available at My Oracle Support, proceed with Section 3.2, "Patch Installation Instructions".

3.2 Patch Installation Instructions

Follow these steps:

  1. If you are using a Data Guard Physical Standby database, you must install this patch on both the primary database and the physical standby database, as described by My Oracle Support document KB147888 How To Apply DBRU in a Data Guard Physical Standby Configuration (Non Standby-First Installable).

  2. If this is an Oracle RAC environment, install this patch using the OPatch rolling (no downtime) installation method as this patch is rolling RAC installable. See My Oracle Support document KB139091 Rolling Patch - OPatch Support for RAC.

  3. If this is not a RAC environment, shut down all instances and listeners associated with the Oracle home that you are updating. For more information, see Oracle Database Administrator's Guide.

  4. Set your current directory to the directory where the patch is located and then run the OPatch utility by entering the following Command:

    StepCommand
    1.
    unzip -d <PATCH_TOP_DIR> p39034528_<version>_<platform>.zip
    2.
    cd <PATCH_TOP_DIR> 39034528
    3.
    opatch apply
  5. If there are errors, refer to Section 5, "Known Issues".

3.3 Patch Post-Installation Instructions

On Oracle Database server, after installing the patch, perform the following actions. This is not required on Oracle Database client.

3.3.1 Apply Conflict Resolution Patches

Apply the patch conflict resolution interim patches that were determined to be needed when you performed the steps in Section 3.1.4, "Interim Patch Conflict Detection and Resolution".

3.3.2 Load Modified SQL Files into the Database

The following steps load modified SQL files into the database. For an Oracle RAC environment, perform these steps on only one node.

Datapatch is run to complete the post-install SQL deployment for the patch being installed. For further details about Datapatch, including Known Issues and workarounds to common problems, see My Oracle Support document KB148594 Datapatch: Database 12c or later Post Patch SQL Automation and My Oracle Support document KB123801 Datapatch User Guide.

  1. For each separate database running on the same shared Oracle home being patched, run the datapatch utility as described in Table 2.

    Table 2 Steps to Run the Datapatch Utility for Non-CDB or Non-PDB Database Versus Multitenant (CDB or PDB) Oracle Database

    StepsNon-CDB or Non-PDB DatabaseStepsMultitenant (CDB/PDB) Oracle Database

    1

    sqlplus /nolog

    1

    sqlplus /nolog

    2

    SQL> Connect / as sysdba

    2

    SQL> Connect / as sysdba

    3

    SQL> startup

    3

    SQL> startup

    4

    SQL> quit

    4

    SQL> alter pluggable database all open;Foot 1

    5

    cd $ORACLE_HOME/OPatch

    5

    SQL> quit

    6

    ./datapatch -sanity_checks (optional)

    6

    cd $ORACLE_HOME/OPatch

    7

    ./datapatch -verbose

    7

    ./datapatch -sanity_checks (optional)



    8

    ./datapatch -verbose

    • Footnote 1 It is recommended the Post Install step be run on all pluggable databases; however, the following command (SQL> alter pluggable database PDB_NAME open ) could be substituted to only open certain PDBs in the single or multitenant database. Doing so will result in the Post Install step only being run on the CDB and opened PDB's. To update a pluggable database at a later date (skipped or newly plugged in), open the database using the alter pluggable database command mentioned previously and rerun the datapatch utility.

      • See My Oracle Support document KB150931 Multitenant Unplug/Plug Best Practices for more information about the procedure for unplugging/plugging with different patch releases (in both directions).

    • Recommended: The datapatch -sanity_checks optional step runs a series of environment and database checks to validate if conditions are optimal for patching. Results are shown on screen with severity and potential actions to take.

      • For more information, see My Oracle Support document KB123801 Datapatch User Guide for additional information and actions. Oracle highly recommends that you perform this step.

    • The datapatch utility runs the necessary apply scripts to load the modified SQL files into the database. An entry is added to the dba_registry_sqlpatch view reflecting the patch application. In the dba_registry_sqlpatch view, verify that the status for the APPLY is SUCCESS.

      • For any other status, see My Oracle Support document KA1374 Troubleshooting Assistant: 12c Datapatch Issues for additional information and actions.
  2. Check the following log files in $ORACLE_BASE/cfgtoollogs/sqlpatch/39034528/<unique patch ID> for errors:

    39034528_apply_<database SID>_<CDB name>_<timestamp>.log
    

    where database SID is the database SID, CDB name is the name of the multitenant container database, and timestamp is of the form YYYYMMMDD_HH_MM_SS.

  3. Any (pluggable) database that has invalid objects after the execution of datapatch should have catcon.pl run to revalidate those objects. For example:

    StepCommand
    1.
    export PATH=$PATH:$ORACLE_HOME/bin
    2.
    cd $ORACLE_HOME/rdbms/admin
    3.
    $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -e -b utlrp -d $ORACLE_HOME/rdbms/admin utlrp.sql

3.3.3 Upgrade Oracle Recovery Manager Catalog

If you are using the Oracle Recovery Manager, the catalog needs to be upgraded. Enter the following command to upgrade it. The UPGRADE CATALOG command must be entered twice to confirm the upgrade.

StepCommand
1.
$ rman catalog username/password@alias
2.
RMAN> UPGRADE CATALOG;
3.
RMAN> UPGRADE CATALOG;
4.
RMAN> EXIT;

3.3.4 Bug Fixes That May Change an Existing Optimizer Execution Plan

At the successful conclusion of the patching event, none of the database bug fixes that may change an existing optimizer execution plan are delivered with the bug fix disabled by default. The status of any module bug fixes (which cause an execution plan change) that were in an enabled state prior to starting the patching event are preserved, but no new module bug fixes (which cause an execution plan change) are activated automatically.

Details on this, including the commands to explicitly enable such bug fixes are present in My Oracle Support document KB148297 Managing "installed but disabled" bug fixes in Database Release Updates using DBMS_OPTIM_BUNDLE.

3.3.5 Update Permissions for extjob

Database release update patch installation involves relinking of libraries and executables to be updated. This can sometimes result in permissions changing and needing to be updated. Execute the following as root user:

StepCommand
1.
# chown root $ORACLE_HOME/bin/extjob
2.
# chmod 4750 $ORACLE_HOME/bin/extjob

3.4 Patch Post-Installation Instructions for Databases Created or Upgraded after Installation of this patch in the Oracle Home

On Oracle Database server, you must execute the steps in Section 3.3.2, "Load Modified SQL Files into the Database" for any new database. There are no actions required for databases that have been upgraded. This is not required on Oracle Database client.

4 Deinstallation

These instructions apply if you need to deinstall the patch.

4.1 Patch Deinstallation Instructions for a Non-RAC Environment

Follow these steps:

  1. Shut down all instances and listeners associated with the Oracle home that you are updating. For more information, see Oracle Database Administrator's Guide.

  2. Run the OPatch utility specifying the rollback argument as follows.

    opatch rollback -id 39034528
    
  3. If there are errors, refer to Section 5, "Known Issues".

4.2 Patch Post-Deinstallation Instructions for a Non-RAC Environment

On Oracle Database server, after deinstalling the patch, perform the following actions. This is not required on Oracle Database client.

  1. Rollback SQL changes from the the Database, as explained in Section 4.2.1.

  2. Upgrade Oracle Recovery Manager Catalog, as explained in Section 4.2.2.

4.2.1 Load Modified SQL Files into the Database

Datapatch is run to complete the post-deinstall SQL deployment for the patch being deinstalled. For further details about Datapatch, including Known Issues and workarounds to common problems, see My Oracle Support document KB148594 Datapatch: Database 12c or later Post Patch SQL Automation and My Oracle Support document KB123801 Datapatch User Guide.

Follow these steps:

  1. For each separate database running on the same shared Oracle home being patched, run the datapatch utility as described in Table 3. If this is Oracle RAC, run datapatch on only one instance.

    Table 3 Steps to Run the datapatch Utility for Non-CDB or Non-PDB Database Versus Multitenant (CDB or PDB) Database

    StepsNon-CDB or Non-PDB DatabaseStepsMultitenant (CDB/PDB) Oracle Database

    1

    sqlplus /nolog

    1

    sqlplus /nolog

    2

    SQL> Connect / as sysdba

    2

    SQL> Connect / as sysdba

    3

    SQL> startup

    3

    SQL> startup

    4

    SQL> quit

    4

    SQL> alter pluggable database all openFoot 1

    5

    cd $ORACLE_HOME/OPatch

    5

    SQL> quit

    6

    ./datapatch -sanity_checks (optional)

    6

    cd $ORACLE_HOME/OPatch

    7

    ./datapatch -verbose

    7

    ./datapatch -sanity_checks (optional)



    8

    ./datapatch -verbose

    • Footnote 1 It is recommended the Post Install step be run on all pluggable databases; however, the following command (SQL> alter pluggable database PDB_NAME open ) could be substituted to only open certain PDBs in the single/multitenant database. Doing so will result in the Post Install step only being run on the CDB and opened PDB's. To update a pluggable database at a later date (skipped or newly plugged in), open the database using the alter pluggable database command mentioned previously and rerun the datapatch utility.

      • See My Oracle Support document KB150931 Multitenant Unplug/Plug Best Practices for more information about the procedure for unplugging/plugging with different patch releases (in both directions).

    • Recommended: The datapatch -sanity_checks optional step runs a series of environment and database checks to validate if conditions are optimal for patching. Results are shown on screen with severity and potential actions to take.

      • For more information, see the My Oracle Support document KB123801 Datapatch User Guide for additional information and actions. Oracle highly recommends that you perform this step.

    • The datapatch utility runs the necessary rollback scripts. An entry is added to the dba_registry_sqlpatch view reflecting the patch application. In the dba_registry_sqlpatch view, verify the Status for the ROLLBACK is SUCCESS.

      • For any other status, see My Oracle Support document KA1374 Troubleshooting Assistant: 12c Datapatch Issues for additional information and actions.
  2. Check the following log files in $ORACLE_BASE/cfgtoollogs/sqlpatch/39034528/<unique patch ID> for errors:

    39034528_rollback_<database SID>_<CDB name>_<timestamp>.log
    

    where database SID is the database SID, CDB name is the name of the multitenant container database, and timestamp is of the form YYYYMMMDD_HH_MM_SS.

  3. Any (pluggable) database that has invalid objects after the execution of datapatch should have catcon.pl run to revalidate those objects. For example:

    StepCommand
    1.
    cd $ORACLE_HOME/rdbms/admin
    2.
    $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -e -b utlrp -d $ORACLE_HOME/rdbms/admin utlrp.sql

4.2.2 Upgrade Oracle Recovery Manager Catalog

If you are using the Oracle Recovery Manager, the catalog needs to be upgraded. Enter the following command to upgrade it. The UPGRADE CATALOG command must be entered twice to confirm the upgrade.

StepCommand
1.
$ rman catalog username/password@alias
2.
RMAN> UPGRADE CATALOG;
3.
RMAN> UPGRADE CATALOG;
4.
RMAN> EXIT;

4.3 Patch Deinstallation Instructions for Oracle RAC Environment

Patch deinstallation instructions for Oracle RAC includes these environments:

Follow these steps for each node in the cluster, one node at a time.

  1. Shut down the instance on the node.

  2. Run the OPatch utility specifying the rollback argument as follows.

    opatch rollback -id 39034528
    

    If there are errors, refer to Section 5, "Known Issues".

  3. Start the instance on the node as follows:

    srvctl start instance
    

4.4 Patch Post-Deinstallation Instructions for Oracle RAC Environment

On Oracle Database server, follow the instructions listed in Section Section 4.2, "Patch Post-Deinstallation Instructions for a Non-RAC Environment" only on the node for which the steps in Section 3.3.2, "Load Modified SQL Files into the Database" were executed during the patch application. This is not required on Oracle Database client.

All other instances can be started and accessed as usual while you are executing the deinstallation steps.

5 Known Issues

For information about OPatch issues, see My Oracle Support document KB133615 Primary Note For OPatch.

For issues documented after the release of this patch, see My Oracle Support document KB869205 Oracle DB/GI/OJVM Update/Revision R19 Apr 2026 Known Issues

Other issues are as follows.

Issue 1

The following ignorable errors may be encountered while running the datapatch/catbundle.sql script or its rollback script:

ORA-00942: table or view does not exist
ORA-00955: name is already used by an existing object
ORA-01430: column being added already exists in table
ORA-01432: public synonym to be dropped does not exist
ORA-01434: private synonym to be dropped does not exist
ORA-01435: user does not exist
ORA-01917: user or role 'XDB' does not exist
ORA-01920: user name '<user-name>' conflicts with another user or role name
ORA-01921: role name '<role name>' conflicts with another user or role name
ORA-01927: cannot REVOKE privileges you did not grant
ORA-01952: system privileges not granted to 'WKSYS'
ORA-02289: sequence does not exist 
ORA-02303: cannot drop or replace a type with type or table dependents
ORA-02443: Cannot drop constraint - nonexistent constraint
ORA-04043: object <object-name> does not exist
ORA-06512: at line <line number>. If this error follow any of above errors, then can be safely ignored.
ORA-14452: attempt to create, alter or drop an index on temporary table already in use
ORA-29809: cannot drop an operator with dependent objects
ORA-29830: operator does not exist
ORA-29832: cannot drop or replace an indextype with dependent indexes
ORA-29844: duplicate operator name specified 
ORA-29931: specified association does not exist

Oracle DBA

anuj blog Archive