Oracle 19c July 2026 quarterly patch instructions for Linux
This guide explains how to apply the Oracle 19c July 2026 quarterly patches for IT Analytics on Linux. Use these instructions to update Oracle Database, OJVM, JDK/JRE, and OPatch components in the required order.
Note:
IT Analytics Portal may not start after Oracle July 2026 Release Update 19.32.0.0. If the IT Analytics portal fails to start after applying the Oracle July 2026 Release Update (19.32.0.0), see KB article: 000040776.
The Oracle July 2026 Release Update includes changes that are not compatible with IT Analytics Portal versions released before June 2026. Compatibility fixes are available in IT Analytics Portal 11.7.2606 and 11.8.2606.
Recommended upgrade order
To avoid portal downtime, complete the IT Analytics Portal upgrade before you apply the Oracle patch.
Upgrade the ITA portal to 11.7.2606 or later, or 11.8.2606 or later. These versions are planned for release in early June 2026, and the Oracle patch will be made available on the Cohesity downloads page only after a compatible ITA version has been released.
Verify ITA portal functionality after the upgrade is completed.
Confirm rollback options are in place, such as validated snapshots or backups, before applying the Oracle patch.
Apply the Oracle July 2026 (19.32.0.0) patch only after the portal upgrade has been completed and verified.
Note:
Applying the Oracle patch before completing the portal upgrade is not supported and may result in extended downtime.
Recovery if the Oracle Patch Was Already Applied
If the Oracle July 2026 patch has already been applied and the portal is impacted, recovery requires one of the following:
Upgrade the ITA portal to 11.7.2606 or 11.8.2606 (or later), or
Rollback (or restore) the ITA portal to a previously working version and then upgrade to a compatible version.
39618649 - July 2026 combo patch, which includes the database Release Update and OJVM patches.
39472050 - Oracle Database Release Update 19.32.0.0.260721.
39222882 - OJVM Release Update 19.32.0.0.260721.
39329591 - JDK bundle patch 19.32.0.0.260721.
Note:
Full command output is available in the Appendices. If the IT Analytics Portal does not work after patching, compare your results with the expected output and follow your rollback plan, such as reverting a snapshot or restoring the database.
Before you apply the Oracle patches, take a cold backup of the IT Analytics database. A cold backup requires the database to be stopped while you copy or back up the Oracle data files to another location. This backup helps simplify recovery if an unexpected issue occurs during patching.
If you need to restore the database, see the IT Analytics System Administrator Guide, section "Restoring the IT Analytics system," and the appendix sections for database backup, export, and import guidance.
For cold backup instructions, see Appendix A: Oracle cold backup procedure.
For database export instructions, see Appendix B: Oracle database backup and export procedure.
Download the following files from the product download area and save them to
/tmp:p6880880_190000_Linux-x86-64.zip(OPatch utility)p39618649_190000_Linux-x86-64.zip(Database RU and OJVM Combo Patch)p39329591_190000_Linux-x86-64.zip(JDK Bundle Patch)grant_public_role_grants.sql
Note:
Earlier Oracle distributions included SQL Developer, which can interfere with patching. If
$ORACLE_HOME/sqldeveloperexists on the portal server, remove it before you apply the patches.$ORACLE_HOME/sqldeveloperNote:
By default,
$ORACLE_HOMEis/opt/aptare/oracle. If your installation uses a custom path, use that path instead.If the directory exists, see Appendix C: Verify whether SQL Developer is present.
Log in to the server as the root user, and then switch to the aptare user:
Note:
The default Oracle user account for IT Analytics is aptare. If this account was changed during implementation, use the designated account for all subsequent steps. You can verify the account in
$APTARE_HOME/bin/aptare_env.sh. The parameter is ORACLE_USER.bash[]# su - aptare
Apply the public grants prior to patching (as the "aptare" user).
Note:
Shell prompts can differ by environment. Run the commands that appear after the bash prompt (bash[]$ or bash[]#) and the SQL prompt (SQL>).
bash[]$ source /opt/aptare/bin/aptare_env.sh
Note:
If IT Analytics is installed outside
/opt/aptare, use your custom installation path when you source the aptare_env.sh file.bash[]$ cd $APTARE_HOME/database/ora_scripts
bash[]$ sqlplus / as sysdba
SQL> alter session set container=scdb;
SQL> @/tmp/grant_public_role_grants.sql
bash[]$ exit
As the "root" user, stop all services using one of the commands below:
bash[]# source /opt/aptare/bin/aptare_env.sh && $APTARE_HOME/bin/aptare stop
or
bash[]# systemctl stop aptare
Switch to the aptare user, source the IT Analytics environment file, and copy the OPatch ZIP file from
/tmpto$ORACLE_HOME.bash[]# su - aptare
bash[]$ source /opt/aptare/bin/aptare_env.sh
bash[]$ cp /tmp/p6880880_190000_Linux-x86-64.zip $ORACLE_HOME
Set the PATH environment variable:
bash[]$ export PATH=$PATH:$ORACLE_HOME/OPatch:/usr/ccs/bin
Go to the
$ORACLE_HOMEdirectory, rename the OPatch folder, and unzip the patch file.bash[]$ cd $ORACLE_HOME
Note:
If the system was patched earlier, remove the OPatch.old directory. Otherwise, ignore the rm command.
bash[]$ rm -rf OPatch.old
bash[]$ rm -rf OPatch
bash[]$ yes | unzip p6880880_190000_Linux-x86-64.zip
Check the OPatch version. The expected output shows OPatch version 12.2.0.1.52.
As the aptare user, copy the Oracle database combo patch and JDK bundle patch files from
/tmpto$ORACLE_HOME.bash[]$ cp /tmp/p39618649_190000_Linux-x86-64.zip $ORACLE_HOME
bash[]$ cp /tmp/p39329591_190000_Linux-x86-64.zip $ORACLE_HOME
Go to the
$ORACLE_HOMEdirectory and unzip the patch files.bash[]$ cd $ORACLE_HOME
bash[]$ yes | unzip p39618649_190000_Linux-x86-64.zip
bash[]$ yes | unzip p39329591_190000_Linux-x86-64.zip
Verify that the oraInventory directory exists:
bash[]$ ls -ld /opt/oraInventory
Expected output: The output shows the oraInventory directory. The date can differ.
drwxrwx--- 4 aptare aptare 4096 Oct 1 09:56 oraInventory/
Note:
If the directory does not exist, see Appendix D: Verify the oraInventory folder.
Check for OPatch conflicts. This command checks for conflicts in the database RU patch and the OJVM patch.
bash[]$ cd $ORACLE_HOME/39618649
bash[]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Expected output: The output shows that the prerequisite check passed and OPatch succeeded. See Appendix E: Full output for the 39618649 conflict check.
If no conflicts are found, apply the database RU patch from the
$ORACLE_HOME/39618649/39472050directory.Note:
During patching, OPatch prompts you to proceed after it verifies the environment and prerequisite checks.
bash[]$ cd $ORACLE_HOME/39618649/39472050
bash[]$ $ORACLE_HOME/OPatch/opatch apply
Expected output: The output shows that OPatch succeeded. See Appendix F: Full output for patch 39472050.
Run the following commands to apply the OJVM patch from the
$ORACLE_HOME/39618649/39222882directory:Note:
During patching, OPatch prompts you to proceed after it verifies the environment and prerequisite checks.
bash[]$ cd $ORACLE_HOME/39618649/39222882
bash[]$ $ORACLE_HOME/OPatch/opatch apply
Expected output: The output shows that OPatch succeeded. See Appendix G: Full output for patch 39222882.
If no conflicts are found, apply the JDK bundle patch from the
$ORACLE_HOME/39329591directory.bash[]$ cd $ORACLE_HOME/39329591
bash[]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Expected output: The output shows that the prerequisite check passed and OPatch succeeded. See Appendix H: Full output for the 39329591 conflict check.
If no conflicts are detected, run the following commands to apply the JDK patch from the
$ORACLE_HOME/39329591folder:Note:
If conflicts or errors occur, see Appendix I: Full output for patch 39329591. During patching, OPatch prompts you to proceed after it verifies the environment and prerequisite checks.
bash[]$ $ORACLE_HOME/OPatch/opatch apply
Expected output: The output shows that OPatch succeeded. See Appendix I: Full output for patch 39329591.
Connect to SQL*Plus:
bash[]$ sqlplus /nolog
SQL> connect / as sysdba
SQL> startup
SQL> alter pluggable database all open;
SQL> quit
Run the following command to apply the patch to the pluggable database. This step might take a few minutes.
bash[]$ $ORACLE_HOME/OPatch/datapatch -verbose -ignorable_errors=ORA-01403,ORA-06512
Expected output: The output shows that patch installation completed successfully. See Appendix J: Full output for datapatch.
[snip] Patch 39472050 apply (pdb CDB$ROOT): SUCCESS Patch 39472050 apply (pdb PDB$SEED): SUCCESS Patch 39472050 apply (pdb SCDB): SUCCESS [snip] Patch 39222882 apply (pdb CDB$ROOT): SUCCESS Patch 39222882 apply (pdb PDB$SEED): SUCCESS Patch 39222882 apply (pdb SCDB): SUCCESS [snip]
Note:
If you receive a message to run utlrp.sql to revalidate objects, run the following commands.
bash[]$ sqlplus / as sysdba
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql
As the aptare user, connect to SQL*Plus and run the following queries to validate the database and OJVM patches:
bash[]$ sqlplus / as sysdba
Check the patch history registry:
SQL> select action, version, comments from sys.registry$history;
Expected output: The output shows BOOTSTRAP and RU_APPLY. See Appendix K: SQL patch validation output.
Check the installed patch registry:
SQL> select patch_id, patch_type, action, status, description, target_version from sys.registry$sqlpatch;
Expected output: The output shows a status of SUCCESS. See Appendix K: SQL patch validation output.
Show the SQL patch status report:
SQL> set serveroutput on
SQL> exec dbms_qopatch.get_sqlpatch_status;
Expected output: The output shows a status of SUCCESS. See Appendix K: SQL patch validation output.
Exit SQL*Plus:
SQL> exit
As the aptare user, run the following command:
bash[]$ $ORACLE_HOME/jdk/bin/java -version
Expected output:
java version "1.8.0_501" Java(TM) SE Runtime Environment (build 1.8.0_501-b08) Java HotSpot(TM) 64-Bit Server VM (build 25.501-b08, mixed mode)
bash[]$ $ORACLE_HOME/OPatch/jre/bin/java -version
Expected output:
java version "1.8.0_501" Java(TM) SE Runtime Environment (build 1.8.0_501-b08) Java HotSpot(TM) 64-Bit Server VM (build 25.501-b08, mixed mode)
After patching, revoke the public grants. Switch to the aptare user by using the following command:
Note:
If IT Analytics uses a split architecture or Shared Services, and does not use the embedded Oracle software provided with IT Analytics, check with your DBA team before you complete this step.
bash[]$ source /opt/aptare/bin/aptare_env.sh
bash[]$ cd $APTARE_HOME/database/ora_scripts
bash[]$ sqlplus / as sysdba
SQL> alter session set container=scdb;
SQL> @revoke_public_role_grants.sql
bash[]$ exit
Expected output: The output shows version 19.32.0.0.0, which indicates that Oracle was upgraded and patched successfully.
As root user (type exit from aptare user to return to root or use sudo), start all services using one of the commands below:
source /opt/aptare/bin/aptare_env.sh && $APTARE_HOME/bin/aptare start
systemctl start aptare
The portal is now patched and running. Log in, verify operations, and run reports.
To verify that Oracle is patched successfully, run the IT Analytics System Health Check report and review the Oracle Patch History section.
Verify that the following entries are present in the report output:
Database Release Update: 19.32.0.0.260721 (39472050)
OJVM Release Update: 19.32.0.0.260721 (39222882)
Note:
The output might include other entries. The preceding two entries indicate that the latest patches are applied.
As the root user, delete the folders and files that were used during patching:
rm -rf /opt/aptare/oracle/OPatch*
rm /opt/aptare/oracle/p6880880_190000_Linux-x86-64.zip
rm /opt/aptare/oracle/p39618649_190000_Linux-x86-64.zip
rm /opt/aptare/oracle/p39329591_190000_Linux-x86-64.zip
rm -rf /opt/aptare/oracle/39618649/* /opt/aptare/oracle/39329591/*
If you are using Red Hat Enterprise Linux 9, you might also have the following folder from the initial installation. You can delete it after you confirm that it is no longer required.
bash[]# rm -rf /opt/aptare/oracle/ora_patches_rhel9
Note:
Previous patching might leave other ZIP files and eight-digit patch directories that are similar to the current patch directories. Delete those obsolete files and directories after you confirm that they are no longer required.
Shut down the Oracle service:
bash[]# source /opt/aptare/bin/aptare_env.sh && $APTARE_HOME/bin/aptare stop
Using your organization's file system backup software, back up all the data files from:
$ORACLE_HOME/dbs/initscdb.ora/data0?/*Note:
By default, IT Analytics data files are written to
/data01through/data06. Your installation might differ. For split architecture deployments, work with your DBA team to make sure that the database is backed up.
The database user "aptare" must have access to the export files stored in the directory:
/opt/aptare/database/tools
Verify that the Oracle user has read and execute privileges on these files before starting the database export.
Log into the Linux database server and switch to user "aptare".
Ensure Oracle Listener and Oracle services are running.
Change to the directory:
$APTARE_HOME/database/toolsExecute the command:
./export_database_template.sh
After successful completion, the export file
aptare_scdb.expis saved in the/tmpdirectory on the Linux database server.Run the cp /opt/aptare/datarcvrconf/aptare.ks /tmp command. This file will be required during the database import.
Note:
By default, IT Analytics data files are written to
/data01through/data06. Your installation might differ. For split architecture deployments, work with your DBA team to make sure that the database is backed up.Run the cp $APTARE_HOME/datarcvrconf/aptare_external_password.properties /tmp command. This file will be required during the database import.
In the event you need to restore the database, please refer to the IT Analytics System Administrator Guide - Section "Restoring the IT Analytics system" / Import the Oracle database / Manual steps for database import / export using data pump.
To verify whether SQL Developer is present on the portal system and whether additional steps are required to complete patching, complete the following steps.
Log in to the server as the root user, and then switch to the aptare user:
bash[]# su - aptare
As the aptare user, go to the following directory and verify whether the sqldeveloper directory exists:
bash[]$ source /opt/aptare/bin/aptare_env.sh
bash[]$ cd $ORACLE_HOME
bash[]$ ls -ld sqldeveloper
If the directory appears in the output, delete the directory.
Example:
drwxr-xr-x. 4 aptare dba 4096 Apr 17 2019 sqldeveloper
bash[]$ rm -rf $ORACLE_HOME/sqldeveloper
If you receive an error that the oraInventory folder is not available, run the following commands to verify the folder.
Log in to the server as root and switch to the "aptare" user using command "su - aptare".
bash[]# su - aptare
Check if oraInventory folder is available under
/opt/. If the folder is not available, then perform the following steps:Note:
If you customized the Oracle user or installation location, replace aptare and the example paths with the values for your environment.
bash[]$ cd /opt
bash[]$ ls -ld oraInventory
Expected output: The output shows the oraInventory directory. The date might differ.
drwxrwx---. 4 aptare dba 4096 Oct 10 16:11 oraInventory
Note:
If the permissions are different, run the following commands as the root user.
bash[]# cd /opt/
bash[]# chown -R aptare:dba oraInventory
bash[]# su - aptare
bash[]$ source /opt/aptare/bin/aptare_env.sh
Run the following command to attach ORACLE_HOME:
bash[]$ $ORACLE_HOME/oui/bin/runInstaller -silent -ignoreSysPrereqs -invPtrLoc "/opt/aptare/oracle/oraInst.loc" -attachHome ORACLE_HOME="/opt/aptare/oracle" ORACLE_HOME_NAME="OraDB19c_home" INVENTORY_LOCATION="/opt/oraInventory"
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-06-49PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/opatch apply Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-08-34PM_1.log Verifying environment and performing prerequisite checks... Start OOP by Prereq process. Launch OOP... Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-08-56PM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 39472050 Do you want to proceed? [y|n] y User Responded with: Y All checks passed. Please shutdown Oracle instances running out of this ORACLE_HOME on the local system. (Oracle Home = '/opt/aptare/oracle') Is the local system ready for patching? [y|n] y User Responded with: Y Backing up files... Applying interim patch '39472050' to OH '/opt/aptare/oracle' 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.crypto.rsf, 19.0.0.0.0 ], [ oracle.oraolap.mgmt, 19.0.0.0.0 ], [ oracle.pg4appc, 19.0.0.0.0 ], [ oracle.precomp.companion, 19.0.0.0.0 ], [ oracle.rdbms.ic, 19.0.0.0.0 ], [ oracle.java.sqlj.sqljruntime, 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.swd.oui, 12.2.0.7.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.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.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.oracler.server, 19.0.0.0.0... Patching component oracle.perlint, 5.28.1.0.0... Patching component oracle.jdk, 1.8.0.201.0... Patch 39472050 successfully applied. Sub-set patch [29517242] has become inactive due to the application of a super-set patch [39472050]. Please refer to Doc ID 2161861.1 for any possible further required actions. Log file location: /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-08-56PM_1.log OPatch succeeded.
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/opatch apply Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-18-01PM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 39222882 Do you want to proceed? [y|n] y User Responded with: Y All checks passed. Please shutdown Oracle instances running out of this ORACLE_HOME on the local system. (Oracle Home = '/opt/aptare/oracle') Is the local system ready for patching? [y|n] y User Responded with: Y Backing up files... Applying interim patch '39222882' to OH '/opt/aptare/oracle' Patching component oracle.javavm.server, 19.0.0.0.0... Patching component oracle.javavm.server.core, 19.0.0.0.0... Patching component oracle.rdbms.dbscripts, 19.0.0.0.0... Patching component oracle.rdbms, 19.0.0.0.0... Patching component oracle.javavm.client, 19.0.0.0.0... Patch 39222882 successfully applied. Log file location: /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-18-01PM_1.log OPatch succeeded.
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./ Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-22-53PM_1.log Invoking prereq "checkconflictagainstohwithdetail" Prereq "checkConflictAgainstOHWithDetail" passed. OPatch succeeded.
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/opatch apply Oracle Interim Patch Installer version 12.2.0.1.52 Copyright (c) 2026, Oracle Corporation. All rights reserved. Oracle Home : /opt/aptare/oracle Central Inventory : /opt/oraInventory from : /opt/aptare/oracle/oraInst.loc OPatch version : 12.2.0.1.52 OUI version : 12.2.0.7.0 Log file location : /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-25-34PM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 39329591 Do you want to proceed? [y|n] y User Responded with: Y All checks passed. Backing up files... Applying interim patch '39329591' to OH '/opt/aptare/oracle' ApplySession: Optional component(s) [ 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.jdk, 1.8.0.201.0... Patch 39329591 successfully applied. Log file location: /opt/aptare/oracle/cfgtoollogs/opatch/opatch2026-07-23_13-25-34PM_1.log
Note:
Your output might differ slightly.
bash[]$ $ORACLE_HOME/OPatch/datapatch -verbose
-ignorable_errors=ORA-01403,ORA-06512
SQL Patching tool version 19.32.0.0.0 Production
on Thu Jul 23 13:30:07 2026
Copyright (c) 2012, 2026, Oracle. All rights reserved.
Log file for this invocation:
/opt/aptare/cfgtoollogs/sqlpatch/
sqlpatch_11780_2026_07_23_13_30_07/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 39222882
(OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882)):
Binary registry: Installed
PDB CDB$ROOT: Not installed
PDB PDB$SEED: Not installed
PDB SCDB: Not installed
Current state of release update SQL patches:
Binary registry:
19.32.0.0.0 Release_Update 260705220710: Installed
PDB CDB$ROOT:
No release update patches installed
PDB PDB$SEED:
No release update patches installed
PDB SCDB:
No release update patches installed
Adding patches to installation queue and performing prereq
checks...done
Installation queue:
For the following PDBs: CDB$ROOT PDB$SEED SCDB
No interim patches need to be rolled back
Patch 39472050 (Database Release Update :
19.32.0.0.260721 (39472050)):
Apply from 19.1.0.0.0 Feature Release
to 19.32.0.0.0 Release_Update 260705220710
The following interim patches will be applied:
39222882 (OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882))
Installing patches...
Patch installation complete. Total patches installed: 6
Validating logfiles...done
Patch 39472050 apply (pdb CDB$ROOT): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39472050/28919163/
39472050_apply_SCDBCNTR_CDBROOT_2026Jul23_13_30_43.log
(no errors)
Patch 39222882 apply (pdb CDB$ROOT): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39222882/28830205/
39222882_apply_SCDBCNTR_CDBROOT_2026Jul23_13_30_43.log
(no errors)
Patch 39472050 apply (pdb PDB$SEED): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39472050/28919163/
39472050_apply_SCDBCNTR_PDBSEED_2026Jul23_13_33_16.log
(no errors)
Patch 39222882 apply (pdb PDB$SEED): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39222882/28830205/
39222882_apply_SCDBCNTR_PDBSEED_2026Jul23_13_33_16.log
(no errors)
Patch 39472050 apply (pdb SCDB): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39472050/28919163/
39472050_apply_SCDBCNTR_SCDB_2026Jul23_13_33_16.log
(no errors)
Patch 39222882 apply (pdb SCDB): SUCCESS
logfile: /opt/aptare/cfgtoollogs/sqlpatch/39222882/28830205/
39222882_apply_SCDBCNTR_SCDB_2026Jul23_13_33_16.log
(no errors)
SQL Patching tool complete on Thu Jul 23 13:36:23 2026Query to check registry for patch history
SQL> select action, version, comments from sys.registry$history;
ACTION VERSION --------------- ------------------------------ COMMENTS ---------------------------------------------- BOOTSTRAP 19 RDBMS_19.32.0.0.0DBRU_LINUX.X64_260705 RU_APPLY 19.0.0.0.0 Patch applied from 19.3.0.0.0 to 19.32.0.0.0: Release_Update - 260705220710
Query to check registry for installed patch
SQL> select patch_id, patch_type, action, status, description, target_version from sys.registry$sqlpatch;
PATCH_ID PATCH_TYPE ACTION STATUS ---------- ---------- ------- ------------------------- DESCRIPTION ------------------------------------------------------- TARGET_VERSION --------------- 39222882 INTERIM APPLY SUCCESS OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882) 19.32.0.0.0 39472050 RU APPLY SUCCESS Database Release Update : 19.32.0.0.260721 (39472050) 19.32.0.0.0
SQL Patch Status Report output with patch details
SQL> set serveroutput on
SQL> exec dbms_qopatch.get_sqlpatch_status;
Patch Id : 39222882
Action : APPLY
Action Time : 23-JUL-2026 13:30:43
Description : OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882)
Logfile :
/opt/aptare/cfgtoollogs/sqlpatch/39222882/28830205/
39222882_apply_SCDBCNTR_CDBROOT_2026Jul23_13_30_43.log
Status : SUCCESS
Patch Id : 39472050
Action : APPLY
Action Time : 23-JUL-2026 13:33:04
Description : Database Release Update : 19.32.0.0.260721 (39472050)
Logfile :
/opt/aptare/cfgtoollogs/sqlpatch/39472050/28919163/
39472050_apply_SCDBCNTR_CDBROOT_2026Jul23_13_30_43.log
Status : SUCCESS
PL/SQL procedure successfully completed.Note:
Any patches that were previously applied will be displayed in the SQL Patch Status Report output above.