Oracle 19c in Windows Environment
Description:-
Step by Step Applying PSU Patch in Oracle 19c in Windows Environment
Prerequisites to Apply Patch:-Database Jan 2025 Release Update 19.26.0.0.250121
1.Shutdown Database Services and Listener
2.Upgrade OPatch Tool
3.Apply PSU patch on ORACLE_HOME in Windows Environment (p37486199_190000_MSWIN-x86-64)
4.Execute Post installation Scripts (datapatch)
5.Check invalid objects and
1) Prerequisites to Apply Patch:-
Download the latest OPatch tool for 19c database and apply the patch: 6880880 from support.oracle.com or from https://updates.oracle.com/download/6880880.html
Check Patches status before apply using below query
SET LINESIZE 500
SET PAGESIZE 1000
SET SERVEROUT ON
SET LONG 2000000
COLUMN action_time FORMAT A12
COLUMN action FORMAT A10
COLUMN comments FORMAT A30
COLUMN description FORMAT A60
COLUMN namespace FORMAT A20
COLUMN status FORMAT A10
SELECT TO_CHAR(action_time, ‘YYYY-MM-DD’) AS action_time,action,status,
description,patch_id FROM sys.dba_registry_sqlpatch ORDER by action_time;
col comp_id for a10
col version for a11
col status for a10
col comp_name for a37
select comp_id,comp_name,version,status from dba_registry;
2) Applying a patching p37486199_190000_MSWIN-x86-64
C:\Windows\system32>set ORACLE_HOME=E:\app\oracle\product\19.3.0\dbhome_1
C:\Windows\system32>set PATH=E:\app\oracle\product\19.3.0\dbhome_1\OPatch;%PATH%
C:\Windows\system32>cd E:\patch_19\p37486199_190000_MSWIN-x86-64\37486199
C:\Windows\system32>E:
E:\patch_19\p37486199_190000_MSWIN-x86-64\37486199>opatch apply
Oracle Interim Patch Installer version 12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved.
Oracle Home : E:\app\oracle\product\19.3.0\dbhome_1
Central Inventory : C:\Program Files\Oracle\Inventory
from :
OPatch version : 12.2.0.1.46
OUI version : 12.2.0.7.0
Log file location : E:\app\oracle\product\19.3.0\dbhome_1\cfgtoollogs\opatch\opatch2025-02-01_17-22-51PM_1.log
Verifying environment and performing prerequisite checks…
OPatch continues with these patches: 37486199
Do you want to proceed? [y|n]
User Responded with: Y
All checks passed.
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = ‘E:\app\oracle\product\19.3.0\dbhome_1’)
Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files…
Applying interim patch ‘37486199’ to OH ‘E:\app\oracle\product\19.3.0\dbhome_1’
ApplySession: Optional component(s) [ oracle.tomcat.crs, 19.0.0.0.0 ] , [ oracle.has.deconfig, 19.0.0.0.0 ] , [ oracle.has.cfs, 19.0.0.0.0 ] , [ oracle.rdbms.tg4msql, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4ifmx, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.rhp.crs, 19.0.0.0.0 ] , [ oracle.has.cvu, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.rdbms.tg4sybs, 19.0.0.0.0 ] , [ oracle.usm, 19.0.0.0.0 ] , [ oracle.ons.daemon, 19.0.0.0.0 ] , [ oracle.rdbms.tg4tera, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.has.crs, 19.0.0.0.0 ] not present in the Oracle Home or a higher version is found.
Patching component oracle.has.common.cvu, 19.0.0.0.0…
Patching component oracle.has.rsf, 19.0.0.0.0…
Patching component oracle.assistants.server, 19.0.0.0.0…
Patching component oracle.ons, 19.0.0.0.0…
Patching component oracle.rdbms.plsql, 19.0.0.0.0…
Patching component oracle.rdbms.util, 19.0.0.0.0…
Patching component oracle.sqlplus.ic, 19.0.0.0.0…
Patching component oracle.sdo.locator.jrf, 19.0.0.0.0…
Patching component oracle.sqlplus, 19.0.0.0.0…
Patching component oracle.dbjava.jdbc, 19.0.0.0.0…
Patching component oracle.network.listener, 19.0.0.0.0…
Patching component oracle.odbc.ic, 19.0.0.0.0…
Patching component oracle.rdbms.rman, 19.0.0.0.0…
Patching component oracle.dbjava.ucp, 19.0.0.0.0…
Patching component oracle.ldap.rsf, 19.0.0.0.0…
Patching component oracle.precomp.common.core, 19.0.0.0.0…
Patching component oracle.oracore.rsf, 19.0.0.0.0…
Patching component oracle.ntoledb.odp_net_2, 19.0.0.0.0…
Patching component oracle.has.db, 19.0.0.0.0…
Patching component oracle.ntoramts, 19.0.0.0.0…
Patching component oracle.marvel, 19.0.0.0.0…
Patching component oracle.xdk.parser.java, 19.0.0.0.0…
Patching component oracle.network.client, 19.0.0.0.0…
Patching component oracle.blaslapack, 19.0.0.0.0…
Patching component oracle.perlint, 5.28.1.0.0…
Patching component oracle.tfa.db, 19.0.0.0.0…
Patching component oracle.ctx, 19.0.0.0.0…
Patching component oracle.rdbms.hsodbc, 19.0.0.0.0…
Patching component oracle.assistants.deconfig, 19.0.0.0.0…
Patching component oracle.ldap.owm, 19.0.0.0.0…
Patching component oracle.duma, 19.0.0.0.0…
Patching component oracle.precomp.lang, 19.0.0.0.0…
Patching component oracle.ntoledb, 19.0.0.0.0…
Patching component oracle.rdbms.rsf, 19.0.0.0.0…
Patching component oracle.rdbms.install.common, 19.0.0.0.0…
Patching component oracle.ldap.security.osdt, 19.0.0.0.0…
Patching component oracle.sdo, 19.0.0.0.0…
Patching component oracle.rdbms.rsf.ic, 19.0.0.0.0…
Patching component oracle.wwg.plsql, 19.0.0.0.0…
Patching component oracle.rdbms.lbac, 19.0.0.0.0…
Patching component oracle.oraolap, 19.0.0.0.0…
Patching component oracle.precomp.rsf, 19.0.0.0.0…
Patching component oracle.ntoledbolap, 19.0.0.0.0…
Patching component oracle.assistants.acf, 19.0.0.0.0…
Patching component oracle.javavm.server, 19.0.0.0.0…
Patching component oracle.precomp.common, 19.0.0.0.0…
Patching component oracle.network.rsf, 19.0.0.0.0…
Patching component oracle.ovm, 19.0.0.0.0…
Patching component oracle.install.deinstalltool, 19.0.0.0.0…
Patching component oracle.rdbms.oci, 19.0.0.0.0…
Patching component oracle.rsf, 19.0.0.0.0…
Patching component oracle.clrintg.ode_net_2, 19.0.0.0.0…
Patching component oracle.nlsrtl.rsf, 19.0.0.0.0…
Patching component oracle.ordim.server, 19.0.0.0.0…
Patching component oracle.rdbms.install.plugins, 19.0.0.0.0…
Patching component oracle.ctx.atg, 19.0.0.0.0…
Patching component oracle.javavm.client, 19.0.0.0.0…
Patching component oracle.rdbms.deconfig, 19.0.0.0.0…
Patching component oracle.dbjava.ic, 19.0.0.0.0…
Patching component oracle.rdbms.dv, 19.0.0.0.0…
Patching component oracle.aspnet_2, 19.0.0.0.0…
Patching component oracle.usm.deconfig, 19.0.0.0.0…
Patching component oracle.dbdev, 19.0.0.0.0…
Patching component oracle.ons.ic, 19.0.0.0.0…
Patching component oracle.mgw.common, 19.0.0.0.0…
Patching component oracle.xdk, 19.0.0.0.0…
Patching component oracle.oracler.server, 19.0.0.0.0…
Patching component oracle.has.common, 19.0.0.0.0…
Patching component oracle.xdk.rsf, 19.0.0.0.0…
Patching component oracle.rdbms.dbscripts, 19.0.0.0.0…
Patching component oracle.rdbms.olap, 19.0.0.0.0…
Patching component oracle.rdbms, 19.0.0.0.0…
Patching component oracle.sdo.locator, 19.0.0.0.0…
Patching component oracle.rdbms.scheduler, 19.0.0.0.0…
Patching component oracle.xdk.xquery, 19.0.0.0.0…
Patching component oracle.jdk, 1.8.0.201.0…
Patch 37486199 successfully applied.
Log file location: E:\app\oracle\product\19.3.0\dbhome_1\cfgtoollogs\opatch\opatch2025-02-01_17-22-51PM_1.log
OPatch succeeded.
3)Execute Post installation Scripts (datapatch)
E:\patch_19\p37486199_190000_MSWIN-x86-64\37486199>cd E:\app\oracle\product\19.3.0\dbhome_1\OPatch
E:\app\oracle\product\19.3.0\dbhome_1\OPatch>datapatch -verbose
SQL Patching tool version 19.26.0.0.0 Production on Sat Feb 1 18:45:10 2025
Copyright (c) 2012, 2025, Oracle. All rights reserved.
Log file for this invocation: E:\app\dmsprod\cfgtoollogs\sqlpatch\sqlpatch_8060_2025_02_01_18_45_10\sqlpatch_invocation.log
Connecting to database…OK
Gathering database info…done
Bootstrapping registry and package to current versions…done
Current state of interim SQL patches:
No interim patches found
Current state of release update SQL patches:
Binary registry:
19.26.0.0.0 Release_Update 250129014853: Installed
SQL registry:
No release update patches installed
Adding patches to installation queue and performing prereq checks…done
Installation queue:
No interim patches need to be rolled back
Patch 37486199 (Windows Database Bundle Patch : 19.26.0.0.250121 (37486199)):
Apply from 19.1.0.0.0 Feature Release to 19.26.0.0.0 Release_Update 250129014853
No interim patches need to be applied
Installing patches…
Patch installation complete. Total patches installed: 1
Validating logfiles…done
Patch 37486199 apply: SUCCESS
logfile: E:\app\dmsprod\cfgtoollogs\sqlpatch\37486199\26038133/37486199_apply_DMSDLPRD_2025Feb01_18_54_42.log (no errors)
4)Check Patches status after apply using below query
SET LINESIZE 500
SET PAGESIZE 1000
SET SERVEROUT ON
SET LONG 2000000
COLUMN action_time FORMAT A12
COLUMN action FORMAT A10
COLUMN comments FORMAT A30
COLUMN description FORMAT A60
COLUMN namespace FORMAT A20
COLUMN status FORMAT A10
SELECT TO_CHAR(action_time, ‘YYYY-MM-DD’) AS action_time,action,status,
description,patch_id FROM sys.dba_registry_sqlpatch ORDER by action_time;
col comp_id for a10
col version for a11
col status for a10
col comp_name for a37
select comp_id,comp_name,version,status from dba_registry;