Tuesday, August 18, 2026

Grid 19c cpu patching 19.32 with JDK 19.32 in GI & RDBMS

 




Major Steps
in this scenario we will be applying july-26 CPU Patch(19.32) on 19c database(19.30)
and then upgrade OJVM and JDK 
- backup binaries
- update opatch
- check conflicts --> analyze
- patch apply
- OJVM upgrade
- JDK upgrade
- run datapatch

####################################
download all required patches form latest CPU page or by manual.
#################################### 
Critical Patch Update (CPU) Jul 2026 for Oracle Database Products
GI,RDBMS CPU JULY-26, OJVM July-26, JDK July-26 (java8u501), Latest 19c OPatch(12.2.0.1.52)
https://www.oracle.com/security-alerts/
https://updates.oracle.com/download/39467003.html
https://updates.oracle.com/download/39222882.html
https://updates.oracle.com/download/39329591.html
https://updates.oracle.com/download/6880880.html
#################################### 
#################################### 


####################################
verify current components versions
#################################### 
[grid@PRODDB01 39618711]$ $ORACLE_HOME/OPatch/opatch lspatches
38729293;TOMCAT RELEASE UPDATE 19.0.0.0.0 (38729293)
38661284;OCW RELEASE UPDATE 19.30.0.0.0 (38661284)
38653268;ACFS RELEASE UPDATE 19.30.0.0.0 (38653268)
38632161;Database Release Update : 19.30.0.0.260120(REL-JAN260130) (38632161)
36758186;DBWLM RELEASE UPDATE 19.0.0.0.0 (36758186)

OPatch succeeded.
[grid@PRODDB01 39618711]$
[grid@PRODDB01 39618711]$ crsctl query crs releasepatch
Oracle Clusterware release patch level is [2001609365] and the complete list of patches [39107825 39107855 39472050 39503034 39526364 ] have been applied on the local node. The release patch string is [19.30.0.0.0].
[grid@PRODDB01 39618711]$ 
[grid@PRODDB01 39618711]$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_471"
Java(TM) SE Runtime Environment (build 1.8.0_471-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.471-b09, mixed mode)
[grid@PRODDB01 39618711]$

[grid@PRODDB01 grid]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.49

OPatch succeeded.
[grid@PRODDB01 grid]$




[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch lspatches
38523609;OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)
38661284;OCW RELEASE UPDATE 19.30.0.0.0 (38661284)
38632161;Database Release Update : 19.30.0.0.260120(REL-JAN260130) (38632161)

OPatch succeeded.
[oracle@PRODDB01 ~]$
[oracle@PRODDB01 ~]$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_471"
Java(TM) SE Runtime Environment (build 1.8.0_471-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.471-b09, mixed mode)
[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.49

OPatch succeeded.
[oracle@PRODDB01 ~]$


####################################
Take backup of GI and RDBMS Home
tar p=preserve permissions
####################################

[oracle@PRODDB01 19.0.0]$ srvctl stop database -d CTSP
[grid@PRODDB01 ~]$ crsctl stop crs
[grid@PRODDB01 ~]$ ps -fux
[grid@PRODDB01 ~]$ cd $ORACLE_HOME/..
[grid@PRODDB01 19.0.0]$ tar -czpf grid_bkp4_july26CPU.tar.gz grid/


[oracle@PRODDB01 ~]$ ps -fux
[oracle@PRODDB01 ~]$ cd $ORACLE_HOME/..
[oracle@PRODDB01 19.0.0]$ tar -czpf dbhome_1_bkp4_july26CPU.tar dbhome_1/

---And if you ever need to restore:
tar -xzpf grid_bkp4_july26CPU.tar.gz
tar -xzpf dbhome_1_bkp4_july26CPU.tar.gz

####################################
upgrade OPATCH in GI & RDBMS homes --> update same for node2
####################################
[root@PRODDB01 19cSW]# mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_49_090826
[root@PRODDB01 19cSW]# unzip -q '/u02/19cSW/p6880880_190000_Linux-x86-64 (3).zip' -d $ORACLE_HOME

[root@PRODDB01 19cSW]# ls -ld $ORACLE_HOME/OP*
drwxr-x--- 15 root root 4096 Jul 22 10:51 /u01/app/19.0.0/grid/OPatch
drwxr-x--- 15 grid oinstall 4096 Jan  6  2026 /u01/app/19.0.0/grid/OPatch_49_090826
[root@PRODDB01 19cSW]# chown -R grid:oinstall $ORACLE_HOME/OPatch
[root@PRODDB02 19cSW]# $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.52

OPatch succeeded.
[root@PRODDB02 19cSW]#

[grid@PRODDB01 grid]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.52

OPatch succeeded.
[grid@PRODDB01 grid]$




[oracle@PRODDB01 ~]$ . cts.env
[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.49

OPatch succeeded.
[oracle@PRODDB01 ~]$
[oracle@PRODDB01 ~]$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_49_090826
[oracle@PRODDB01 ~]$ unzip -q '/u02/p6880880_190000_Linux-x86-64 (3).zip' -d $ORACLE_HOME
[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.52

OPatch succeeded.
[oracle@PRODDB01 ~]$


#################################### ---> -
list patches which were applied
#################################### ---> -

[grid@PRODDB01 39618711]$ $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh /u01/app/19.0.0/grid

   Patch Location in Inventory:
     /u01/app/19.0.0/grid/inventory/oneoffs/36758186
   Patch Location in Storage area:
     /u01/app/19.0.0/grid/.patch_storage/36758186_Jun_21_2024_04_12_32



--------------------------------------------------------------------------------

OPatch succeeded.

real    0m55.233s
user    1m1.131s
sys     0m1.595s
[grid@PRODDB01 39618711]$


####################################
unzip patches and check conflicts
even with the conflict patch applied successful as there was no issue during analyze
####################################
[grid@PRODDB01 ~]$ unzip -q '/u02/19cSW/19cGI_32PSU_with_OJVM/p39618711_190000_Linux-x86-64.zip' -d /u01/19cGI_32PSU_with_OJVM


pwd
time $ORACLE_HOME/OPatch/opatch prereq CheckMinimumOPatchVersion -phBaseDir //u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
pwd


[grid@PRODDB01 39618711]$ pwd
time $ORACLE_HOME/OPatch/opatch prereq CheckMinimumOPatchVersion -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
pwd
/u01/19cGI_32PSU_with_OJVM/39618711
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-45-25PM_1.log

Invoking prereq "checkminimumopatchversion"

Prereq "checkMinimumOPatchVersion" passed.

OPatch succeeded.

real    0m5.131s
user    0m8.521s
sys     0m0.855s
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-45-30PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

real    0m21.210s
user    0m32.347s
sys     0m1.891s
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-45-51PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

real    0m8.986s
user    0m15.939s
sys     0m1.029s
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-46-00PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

real    0m8.529s
user    0m15.023s
sys     0m0.979s
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-46-09PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

real    0m8.598s
user    0m15.263s
sys     0m0.967s

[grid@PRODDB01 39618711]$
[grid@PRODDB01 39618711]$ time $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825

Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-09_13-47-50PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

ZOP-47: The patch(es) has supersets with other patches installed in the Oracle Home (or) among themselves.

ZOP-40: The patch(es) has conflicts with other patches installed in the Oracle Home (or) among themselves.

Prereq "checkConflictAgainstOHWithDetail" failed.

Summary of Conflict Analysis:

There are no patches that can be applied now.

Following patches have conflicts. Please contact Oracle Support and get the merged patch of the patches :
38661284, 39107825

Conflicts/Supersets for each patch are:

Patch : 39107825

        Bug Superset of 36758186
        Super set bugs are:
        31862202, 30086914, 35096482, 36734957, 31547458, 31554751, 32435386, 32153618, 33403356

        Conflict with 38661284
        Conflict details:
        /u01/app/19.0.0/grid/qos/conf/jwc.properties
        /u01/app/19.0.0/grid/qos/conf/Catalina/localhost/dbwlm.xml
        /u01/app/19.0.0/grid/qos/conf/web.xml
        /u01/app/19.0.0/grid/qos/conf/server.xml
        /u01/app/19.0.0/grid/qos/conf/logging.properties
        /u01/app/19.0.0/grid/qos/conf/catalina.properties
        /u01/app/19.0.0/grid/qos/conf/catalina.policy
        /u01/app/19.0.0/grid/qos/conf/context.xml

OPatch succeeded.

real    0m8.653s
user    0m15.209s
sys     0m0.933s
[grid@PRODDB01 39618711]$



#################################### 
run analyze and verify results before apply
the below 'ls -ld,ls' should show result else permission issue
####################################

[root@PRODDB02 u01]# chown -R grid:oinstall /u01/19cGI_32PSU_with_OJVM/
[root@PRODDB01 u01]# su - oracle -c 'ls -ld /u01/19cGI_32PSU_with_OJVM/39618711/39467003'
drwxr-xr-x 8 root root 159 Aug  9 14:27 /u01/19cGI_32PSU_with_OJVM/39618711/39467003
[root@PRODDB01 u01]# su - oracle -c 'ls /u01/19cGI_32PSU_with_OJVM/39618711/39467003'
39107825  39107855  39472050  39503034  39526364  automation  bundle.xml  README.html  README.txt
[root@PRODDB01 u01]#
if permission issue then try below command:
[root@PRODDB01 u01]# chmod -R a+rX /u01/19cGI_32PSU_with_OJVM/39618711



to run analyze only on specified home (GRID)
[root@PRODDB01 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 -analyze -oh /u01/app/19.0.0/grid
to run analyze only on specified home (GRID+RDBMS)
[root@PRODDB01 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 -analyze

OPatchauto session is initiated at Sun Aug  9 14:30:17 2026

System initialization log file is /u01/app/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2026-08-09_02-30-21PM.log.

Session log file is /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2026-08-09_02-30-40PM.log
The id for this session is 1GXE

Executing OPatch prereq operations to verify patch applicability on home /u01/app/19.0.0/grid
Patch applicability verified successfully on home /u01/app/19.0.0/grid


Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/19.0.0/dbhome_1
Patch applicability verified successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Executing patch validation checks on home /u01/app/19.0.0/grid
Patch validation checks successfully completed on home /u01/app/19.0.0/grid


Executing patch validation checks on home /u01/app/oracle/product/19.0.0/dbhome_1
Patch validation checks successfully completed on home /u01/app/oracle/product/19.0.0/dbhome_1


Verifying SQL patch applicability on home /u01/app/oracle/product/19.0.0/dbhome_1
SQL patch applicability verified successfully on home /u01/app/oracle/product/19.0.0/dbhome_1

OPatchAuto successful.

--------------------------------Summary--------------------------------

Analysis for applying patches has completed successfully:

Host:hq01-ctsdb01
CRS Home:/u01/app/19.0.0/grid
Version:19.0.0.0.0


==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-30-57PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-30-57PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-30-57PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-30-57PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-30-57PM_1.log


Host:hq01-ctsdb01
RAC Home:/u01/app/oracle/product/19.0.0/dbhome_1
Version:19.0.0.0.0


==Following patches were SKIPPED:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
Reason: This patch is not applicable to this specified target type - "rac_database"


==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
Log: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-32-37PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
Log: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-32-37PM_1.log



OPatchauto session completed at Sun Aug  9 14:34:30 2026
Time taken to complete the session 4 minutes, 9 seconds

real    4m13.501s
user    4m52.092s
sys     0m15.633s
[root@PRODDB01 u01]#




####################################
apply patch on node1, it will upgrade GI and RDBS to version 19.32
####################################
[root@PRODDB01 u01]# crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
[root@PRODDB01 u01]#

The OPatch utility has automated the patch application for the Oracle Grid Infrastructure (Grid) home and the Oracle RAC database homes. It operates by querying existing configurations and automating the steps required for patching each Oracle RAC database home of same version and the Grid home.

The utility must be executed by an operating system (OS) user with root privileges, and it must be executed on each node in the cluster if the Grid home or Oracle RAC database home is in non-shared storage. The utility can be run in parallel on the cluster nodes except for the first (any) node.

Depending on command line options specified, one invocation of OPatchAuto can patch the Grid home, Oracle RAC database homes, or both Grid and Oracle RAC database homes of the same Oracle release version as the patch. You can also roll back the patch with the same selectivity.



to apply patch only on GRID HOME  (preferred approach)

[grid@PRODDB01 grid]$ $ORACLE_HOME/OPatch/opatch version
[root@PRODDB01 u01]#
GRID HOME
[root@PRODDB01 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 -oh /u01/app/19.0.0/grid
RDBMS HOME
[root@PRODDB01 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 -oh /u01/app/oracle/product/19.0.0/dbhome_1


to apply patch only on GRID HOME and RDBMS (bit risky)
[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch version
[root@PRODDB01 u01]#
[root@PRODDB01 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 

OPatchauto session is initiated at Sun Aug  9 14:38:24 2026

System initialization log file is /u01/app/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2026-08-09_02-38-28PM.log.

Session log file is /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2026-08-09_02-38-46PM.log
The id for this session is 35J1

Executing OPatch prereq operations to verify patch applicability on home /u01/app/19.0.0/grid
Patch applicability verified successfully on home /u01/app/19.0.0/grid


Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/19.0.0/dbhome_1
Patch applicability verified successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Executing patch validation checks on home /u01/app/19.0.0/grid
Patch validation checks successfully completed on home /u01/app/19.0.0/grid


Executing patch validation checks on home /u01/app/oracle/product/19.0.0/dbhome_1
Patch validation checks successfully completed on home /u01/app/oracle/product/19.0.0/dbhome_1


Verifying SQL patch applicability on home /u01/app/oracle/product/19.0.0/dbhome_1
SQL patch applicability verified successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Preparing to bring down database service on home /u01/app/oracle/product/19.0.0/dbhome_1
Successfully prepared home /u01/app/oracle/product/19.0.0/dbhome_1 to bring down database service


Performing prepatch operations on CRS - bringing down CRS service on home /u01/app/19.0.0/grid
Prepatch operation log file location: /u01/app/grid/crsdata/hq01-ctsdb01/crsconfig/crs_prepatch_apply_inplace_hq01-ctsdb01_2026-08-09_02-42-48PM.log
CRS service brought down successfully on home /u01/app/19.0.0/grid


Performing prepatch operation on home /u01/app/oracle/product/19.0.0/dbhome_1
Prepatch operation completed successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Start applying binary patch on home /u01/app/oracle/product/19.0.0/dbhome_1
Binary patch applied successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Running rootadd_rdbms.sh on home /u01/app/oracle/product/19.0.0/dbhome_1
Successfully executed rootadd_rdbms.sh on home /u01/app/oracle/product/19.0.0/dbhome_1


Performing postpatch operation on home /u01/app/oracle/product/19.0.0/dbhome_1
Postpatch operation completed successfully on home /u01/app/oracle/product/19.0.0/dbhome_1


Start applying binary patch on home /u01/app/19.0.0/grid
Binary patch applied successfully on home /u01/app/19.0.0/grid


Running rootadd_rdbms.sh on home /u01/app/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /u01/app/19.0.0/grid




Performing postpatch operations on CRS - starting CRS service on home /u01/app/19.0.0/grid
Postpatch operation log file location: /u01/app/grid/crsdata/hq01-ctsdb01/crsconfig/crs_postpatch_apply_inplace_hq01-ctsdb01_2026-08-09_02-56-53PM.log
CRS service started successfully on home /u01/app/19.0.0/grid


Preparing home /u01/app/oracle/product/19.0.0/dbhome_1 after database service restarted
No step execution required.........


Trying to apply SQL patch on home /u01/app/oracle/product/19.0.0/dbhome_1
No SQL patch operations are required on local node for this home

OPatchAuto successful.

--------------------------------Summary--------------------------------

Patching is completed successfully. Please find the summary as follows:

Host:hq01-ctsdb01
RAC Home:/u01/app/oracle/product/19.0.0/dbhome_1
Version:19.0.0.0.0
Summary:

==Following patches were SKIPPED:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
Reason: This patch is not applicable to this specified target type - "rac_database"


==Following patches were SUCCESSFULLY applied:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
Log: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-44-16PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
Log: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-44-16PM_1.log


Host:hq01-ctsdb01
CRS Home:/u01/app/19.0.0/grid
Version:19.0.0.0.0
Summary:

==Following patches were SUCCESSFULLY applied:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-49-53PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-49-53PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-49-53PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-49-53PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_14-49-53PM_1.log



OPatchauto session completed at Sun Aug  9 15:00:40 2026
Time taken to complete the session 22 minutes, 12 seconds

real    22m16.124s
user    16m12.253s
sys     3m4.019s
[root@PRODDB01 u01]# ls -ltrh
total 0
drwxr-xr-x. 7 root oinstall 83 Jul  2 10:25 app
drwxr-xr-x  3 root root     86 Aug  9 14:27 19cGI_32PSU_with_OJVM
[root@PRODDB01 u01]#


[grid@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch lspatches
39526364;OCW RELEASE UPDATE 19.32.0.0.0 (39526364)
39503034;ACFS RELEASE UPDATE 19.32.0.0.0 (39503034)
39472050;Database Release Update : 19.32.0.0.260721 (39472050)
39107855;TOMCAT RELEASE UPDATE 19.0.0.0.0 (39107855)
39107825;DBWLM RELEASE UPDATE 19.0.0.0.0 (39107825)

OPatch succeeded.
[grid@PRODDB01 ~]$
[grid@PRODDB01 ~]$ crsctl query crs releasepatch
Oracle Clusterware release patch level is [3004609525] and the complete list of patches [39107825 39107855 39472050 39503034 39526364 ] have been applied on the local node. The release patch string is [19.32.0.0.0].
[grid@PRODDB01 ~]$



[grid@PRODDB01 ~]$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_491"
Java(TM) SE Runtime Environment (build 1.8.0_491-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.491-b10, mixed mode)
[grid@PRODDB01 ~]$

[oracle@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch lspatches
39526364;OCW RELEASE UPDATE 19.32.0.0.0 (39526364)
39472050;Database Release Update : 19.32.0.0.260721 (39472050)
38523609;OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)

OPatch succeeded.
[oracle@PRODDB01 ~]$




####################################
update OPATCH in node-2 GI and rdbms then -->analyze --> apply
####################################
[oracle@PRODDB02 ~]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.49

OPatch succeeded.
[oracle@PRODDB02 ~]$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_49_090826
[oracle@PRODDB02 ~]$ unzip -q '/u02/19cSW/p6880880_190000_Linux-x86-64 (3).zip' -d $ORACLE_HOME
[oracle@PRODDB02 ~]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.52

OPatch succeeded.
[oracle@PRODDB02 ~]$

[root@PRODDB02 u01]# $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.52

OPatch succeeded.
[root@PRODDB02 u01]#
[root@PRODDB02 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003 -analyze

OPatchauto session completed at Sun Aug  9 15:13:55 2026
Time taken to complete the session 4 minutes, 15 seconds

real    4m18.624s
user    4m48.947s
sys     0m15.068s
[root@PRODDB02 u01]#
[root@PRODDB02 u01]#
[root@PRODDB02 u01]#


[root@PRODDB02 u01]# crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
[root@PRODDB02 u01]#
[root@PRODDB02 u01]# time $ORACLE_HOME/OPatch/opatchauto apply /u01/19cGI_32PSU_with_OJVM/39618711/39467003

Host:hq01-ctsdb02
CRS Home:/u01/app/19.0.0/grid
Version:19.0.0.0.0
Summary:

==Following patches were SUCCESSFULLY applied:

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107825
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_15-25-36PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39107855
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_15-25-36PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39472050
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_15-25-36PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39503034
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_15-25-36PM_1.log

Patch: /u01/19cGI_32PSU_with_OJVM/39618711/39467003/39526364
Log: /u01/app/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2026-08-09_15-25-36PM_1.log



OPatchauto session completed at Sun Aug  9 15:39:53 2026
Time taken to complete the session 25 minutes, 23 seconds

real    25m27.098s
user    16m19.944s
sys     3m7.526s
[root@PRODDB02 u01]#



####################################
verify updates in dba_registry
####################################



set linesize 200 pagesize 400;
col COMP_ID for a15;
col COMP_NAME for a50;
col SCHEMA for a10;
col VERSION for a15;
col VERSION_FULL for a15;
col ACTION_TIME for a35;
select comp_id,comp_name,schema,version,status from dba_registry;
select comp_id,comp_name,version,version_full,status from dba_registry;
select PATCH_ID,ACTION,STATUS,ACTION_TIME,DESCRIPTION from dba_registry_sqlpatch;

SQL>
COMP_ID         COMP_NAME                                          VERSION         VERSION_FULL    STATUS
--------------- -------------------------------------------------- --------------- --------------- -----------
CATALOG         Oracle Database Catalog Views                      19.0.0.0.0      19.32.0.0.0     VALID
CATPROC         Oracle Database Packages and Types                 19.0.0.0.0      19.32.0.0.0     VALID
RAC             Oracle Real Application Clusters                   19.0.0.0.0      19.32.0.0.0     VALID
JAVAVM          JServer JAVA Virtual Machine                       19.0.0.0.0      19.32.0.0.0     VALID
XML             Oracle XDK                                         19.0.0.0.0      19.32.0.0.0     VALID
CATJAVA         Oracle Database Java Packages                      19.0.0.0.0      19.32.0.0.0     VALID
APS             OLAP Analytic Workspace                            19.0.0.0.0      19.32.0.0.0     VALID
XDB             Oracle XML Database                                19.0.0.0.0      19.32.0.0.0     VALID
OWM             Oracle Workspace Manager                           19.0.0.0.0      19.32.0.0.0     VALID
CONTEXT         Oracle Text                                        19.0.0.0.0      19.32.0.0.0     VALID
ORDIM           Oracle Multimedia                                  19.0.0.0.0      19.32.0.0.0     VALID
SDO             Spatial                                            19.0.0.0.0      19.32.0.0.0     VALID
XOQ             Oracle OLAP API                                    19.0.0.0.0      19.32.0.0.0     VALID
OLS             Oracle Label Security                              19.0.0.0.0      19.32.0.0.0     VALID
DV              Oracle Database Vault                              19.0.0.0.0      19.32.0.0.0     VALID

15 rows selected.

SQL>

  PATCH_ID ACTION          STATUS                    ACTION_TIME                         DESCRIPTION
---------- --------------- ------------------------- ----------------------------------- ----------------------------------------------------------------------------------------------------
  38523609 APPLY           SUCCESS                   05-JUL-26 02.05.27.143532 PM        OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)
  38632161 APPLY           SUCCESS                   05-JUL-26 02.12.53.910089 PM        Database Release Update : 19.30.0.0.260120(REL-JAN260130) (38632161)
  39472050 APPLY           SUCCESS                   09-AUG-26 03.39.38.348862 PM        Database Release Update : 19.32.0.0.260721 (39472050)

SQL>



####################################
apply OJVM and JDK Patches (napply also works)
#################################### ---> -

[oracle@PRODDB01 OJVM_19_ALL]$ mkdir OJVM_19_32
[oracle@PRODDB01 OJVM_19_ALL]$ cd OJVM_19_32
[oracle@PRODDB01 OJVM_19_32]$ ls -ltrh
total 124M
-rw-r--r-- 1 root root 124M Aug  9 15:44 p39222882_190000_Linux-x86-64.zip
[oracle@PRODDB01 OJVM_19_32]$ unzip -q p39222882_190000_Linux-x86-64.zip
[oracle@PRODDB01 OJVM_19_32]$ ls -ltrh
total 124M
drwxr-xr-x 4 oracle oinstall   87 Jun 29 16:23 39222882
-rw-rw-r-- 1 oracle oinstall  33K Jul 21 18:47 PatchSearch.xml
-rw-r--r-- 1 root   root     124M Aug  9 15:44 p39222882_190000_Linux-x86-64.zip
[oracle@PRODDB01 OJVM_19_32]$ cd 39222882/
[oracle@PRODDB01 39222882]$ $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       : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2026-08-09_15-49-05PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[oracle@PRODDB01 39222882]$

[oracle@PRODDB01 39222882]$ srvctl stop database -d CTSP

[oracle@PRODDB01 39222882]$
[oracle@PRODDB01 39222882]$ time $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       : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2026-08-09_15-56-36PM_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 = '/u01/app/oracle/product/19.0.0/dbhome_1')


Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '39222882' to OH '/u01/app/oracle/product/19.0.0/dbhome_1'

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.
Sub-set patch [38523609] has become inactive due to the application of a super-set patch [39222882].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2026-08-09_15-56-36PM_1.log

OPatch succeeded.

real    2m14.031s
user    2m19.497s
sys     0m8.010s

[oracle@PRODDB01 39222882]$ $ORACLE_HOME/OPatch/opatch lspatches
39222882;OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882)
39526364;OCW RELEASE UPDATE 19.32.0.0.0 (39526364)
39472050;Database Release Update : 19.32.0.0.260721 (39472050)

OPatch succeeded.
[oracle@PRODDB01 39222882]$


####################################
apply latest JDK Patch

[oracle@PRODDB01 java8u501]$ pwd
/u02/19cSW/JDK_19_ALL/java8u501
[oracle@PRODDB01 java8u501]$ ls -ltrh
total 127M
-rw-r--r-- 1 root root 127M Aug  9 15:59 p39329591_190000_Linux-x86-64.zip
[oracle@PRODDB01 java8u501]$


[oracle@PRODDB01 java8u501]$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_491"
Java(TM) SE Runtime Environment (build 1.8.0_491-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.491-b10, mixed mode)
[oracle@PRODDB01 java8u501]$

[oracle@PRODDB01 java8u501]$ time $ORACLE_HOME/OPatch/opatch napply -id 39329591
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2026-08-09_16-03-49PM_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 '/u01/app/oracle/product/19.0.0/dbhome_1'
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: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2026-08-09_16-03-49PM_1.log

OPatch succeeded.
real    2m21.476s
user    2m30.789s
sys     0m5.490s
[oracle@PRODDB01 java8u501]$
[oracle@PRODDB01 java8u501]$
[oracle@PRODDB01 java8u501]$ $ORACLE_HOME/jdk/bin/java -version
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)
[oracle@PRODDB01 java8u501]$



####################################
run datapatch to load sql's
#################################### 

[oracle@PRODDB01 java8u501]$ srvctl start database -d CTSP

[oracle@rac1 ~]$ time $ORACLE_HOME/OPatch/datapatch -verbose
SQL Patching tool version 19.32.0.0.0 Production on Sun Aug  9 16:15:06 2026
Copyright (c) 2012, 2026, Oracle.  All rights reserved.

Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_2939446_2026_08_09_16_15_06/sqlpatch_invocation.log

Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done

Current state of interim SQL patches:
Interim patch 38523609 (OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)):
  Binary registry: Not installed
  SQL registry: Applied successfully on 05-JUL-26 02.05.27.143532 PM
Interim patch 39222882 (OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882)):
  Binary registry: Installed
  SQL registry: Not installed

Current state of release update SQL patches:
  Binary registry:
    19.32.0.0.0 Release_Update 260705220710: Installed
  SQL registry:
    Applied 19.32.0.0.0 Release_Update 260705220710 successfully on 09-AUG-26 03.39.38.348862 PM

Adding patches to installation queue and performing prereq checks...done
Installation queue:
  The following interim patches will be rolled back:
    38523609 (OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609))
  No release update patches need to be installed
  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: 2

Validating logfiles...done
Patch 38523609 rollback: SUCCESS
  logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/38523609/28341036/38523609_rollback_CTS_2026Aug09_16_15_49.log (no errors)
Patch 39222882 apply: SUCCESS
  logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/39222882/28830205/39222882_apply_CTS_2026Aug09_16_16_14.log (no errors)
SQL Patching tool complete on Sun Aug  9 16:16:40 2026

real    1m33.988s
user    0m1.229s
sys     0m0.350s
[oracle@PRODDB01 java8u501]$


####################################
verify loaded sql
####################################


set linesize 200 pagesize 400;
col COMP_ID for a15;
col COMP_NAME for a50;
col SCHEMA for a10;
col VERSION for a15;
col VERSION_FULL for a15;
col ACTION_TIME for a35;
select comp_id,comp_name,schema,version,status from dba_registry;
select comp_id,comp_name,version,version_full,status from dba_registry;
select PATCH_ID,ACTION,STATUS,ACTION_TIME,DESCRIPTION from dba_registry_sqlpatch;

COMP_ID         COMP_NAME                                          SCHEMA     VERSION         STATUS
--------------- -------------------------------------------------- ---------- --------------- -----------
CATALOG         Oracle Database Catalog Views                      SYS        19.0.0.0.0      VALID
CATPROC         Oracle Database Packages and Types                 SYS        19.0.0.0.0      VALID
RAC             Oracle Real Application Clusters                   SYS        19.0.0.0.0      VALID
JAVAVM          JServer JAVA Virtual Machine                       SYS        19.0.0.0.0      VALID
XML             Oracle XDK                                         SYS        19.0.0.0.0      VALID
CATJAVA         Oracle Database Java Packages                      SYS        19.0.0.0.0      VALID
APS             OLAP Analytic Workspace                            SYS        19.0.0.0.0      VALID
XDB             Oracle XML Database                                XDB        19.0.0.0.0      VALID
OWM             Oracle Workspace Manager                           WMSYS      19.0.0.0.0      VALID
CONTEXT         Oracle Text                                        CTXSYS     19.0.0.0.0      VALID
ORDIM           Oracle Multimedia                                  ORDSYS     19.0.0.0.0      VALID
SDO             Spatial                                            MDSYS      19.0.0.0.0      VALID
XOQ             Oracle OLAP API                                    OLAPSYS    19.0.0.0.0      VALID
DV              Oracle Database Vault                              DVSYS      19.0.0.0.0      VALID
OLS             Oracle Label Security                              LBACSYS    19.0.0.0.0      VALID

15 rows selected.

SQL>
COMP_ID         COMP_NAME                                          VERSION         VERSION_FULL    STATUS
--------------- -------------------------------------------------- --------------- --------------- -----------
CATALOG         Oracle Database Catalog Views                      19.0.0.0.0      19.32.0.0.0     VALID
CATPROC         Oracle Database Packages and Types                 19.0.0.0.0      19.32.0.0.0     VALID
RAC             Oracle Real Application Clusters                   19.0.0.0.0      19.32.0.0.0     VALID
JAVAVM          JServer JAVA Virtual Machine                       19.0.0.0.0      19.32.0.0.0     VALID
XML             Oracle XDK                                         19.0.0.0.0      19.32.0.0.0     VALID
CATJAVA         Oracle Database Java Packages                      19.0.0.0.0      19.32.0.0.0     VALID
APS             OLAP Analytic Workspace                            19.0.0.0.0      19.32.0.0.0     VALID
XDB             Oracle XML Database                                19.0.0.0.0      19.32.0.0.0     VALID
OWM             Oracle Workspace Manager                           19.0.0.0.0      19.32.0.0.0     VALID
CONTEXT         Oracle Text                                        19.0.0.0.0      19.32.0.0.0     VALID
ORDIM           Oracle Multimedia                                  19.0.0.0.0      19.32.0.0.0     VALID
SDO             Spatial                                            19.0.0.0.0      19.32.0.0.0     VALID
XOQ             Oracle OLAP API                                    19.0.0.0.0      19.32.0.0.0     VALID
OLS             Oracle Label Security                              19.0.0.0.0      19.32.0.0.0     VALID
DV              Oracle Database Vault                              19.0.0.0.0      19.32.0.0.0     VALID

15 rows selected.

SQL>

  PATCH_ID ACTION          STATUS                    ACTION_TIME                         DESCRIPTION
---------- --------------- ------------------------- ----------------------------------- ----------------------------------------------------------------------------------------------------
  38523609 APPLY           SUCCESS                   05-JUL-26 02.05.27.143532 PM        OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)
  38632161 APPLY           SUCCESS                   05-JUL-26 02.12.53.910089 PM        Database Release Update : 19.30.0.0.260120(REL-JAN260130) (38632161)
  39472050 APPLY           SUCCESS                   09-AUG-26 03.39.38.348862 PM        Database Release Update : 19.32.0.0.260721 (39472050)
  38523609 ROLLBACK        SUCCESS                   09-AUG-26 04.16.14.673792 PM        OJVM RELEASE UPDATE: 19.30.0.0.260120 (38523609)
  39222882 APPLY           SUCCESS                   09-AUG-26 04.16.40.247350 PM        OJVM RELEASE UPDATE: 19.32.0.0.260721 (39222882)

SQL>
SQL>


Upgrading JDK for Grid home
####################################
Upgrading JDK for Grid home
####################################
https://docs.oracle.com/en/database/oracle/oracle-database/19/cwsol/applying-patches-when-oracle-oracle-clusterware-fails-to-start.html

#################################### ---> chatgpt steps for upgrde jdk in grid home with napply
#################################### ---> 
#######---->1. Pre-check — run on both nodes

As root:

export ORACLE_HOME=/u01/app/19.0.0/grid
export PATH=$ORACLE_HOME/bin:$PATH

hostname

$ORACLE_HOME/bin/crsctl check crs

$ORACLE_HOME/bin/crsctl query crs releasepatch
$ORACLE_HOME/bin/crsctl query crs softwarepatch
$ORACLE_HOME/bin/crsctl query crs activeversion -f

As grid:

$ORACLE_HOME/OPatch/opatch lspatches
$ORACLE_HOME/jdk/bin/java -version


#######---->2. Put the cluster into rolling patch mode

Do this from the node where CRS is healthy, for example PRODDB02.

As root:

export ORACLE_HOME=/u01/app/19.0.0/grid
export PATH=$ORACLE_HOME/bin:$PATH

[root@PRODDB02 ~]# $ORACLE_HOME/bin/crsctl start rollingpatch
CRS-1151: The cluster was successfully set to rolling patch mode.
[root@PRODDB02 ~]#
[root@PRODDB02 ~]# $ORACLE_HOME/bin/crsctl query crs activeversion -f
Oracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [ROLLING PATCH]. The cluster active patch level is [3004609525].
[root@PRODDB02 ~]#

#######---->3. Patch Node 1 — PRODDB01

Since Node 1 is the node being patched, first stop CRS.

As root:
[root@PRODDB01 ~]# $ORACLE_HOME/bin/crsctl stop crs -f


Verify:
[root@PRODDB01 ~]# $ORACLE_HOME/bin/crsctl check crs
CRS-4639: Could not contact Oracle High Availability Services
[root@PRODDB01 ~]#


Now unlock the Grid home:

[root@PRODDB01 java8u501]# time $ORACLE_HOME/crs/install/rootcrs.sh -unlock
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/hq01-ctsdb01/crsconfig/crsunlock_hq01-ctsdb01_2026-08-10_12-42-21AM.log
2026/08/10 12:42:21 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA) Collector.
2026/08/10 12:43:01 CLSRSC-4013: Successfully shut down Oracle Trace File Analyzer (TFA) Collector.
2026/08/10 12:43:02 CLSRSC-347: Successfully unlock /u01/app/19.0.0/grid
real    0m56.030s
user    0m1.432s
sys     0m0.804s
[root@PRODDB01 java8u501]#

#######---->4. Apply 39329591 as grid (napply)

Switch to grid:
Set the environment:

[root@PRODDB01 java8u501]# su - grid
Failed to retrieve ASM endpoints.
[grid@PRODDB01 ~]$ . grid.env
Failed to retrieve ASM endpoints.
Connected to an idle instance.
ASMCMD-8102: no connection to Oracle ASM; command requires Oracle ASM to run
[grid@PRODDB01 ~]$ cd /u02/19cSW/JDK_19_ALL/java8u501/
[grid@PRODDB01 java8u501]$ ls -ltrh
total 127M
-rw-r--r-- 1 root root 127M Aug  9 15:59 p39329591_190000_Linux-x86-64.zip
[grid@PRODDB01 java8u501]$ time $ORACLE_HOME/OPatch/opatch napply -id 39329591
Oracle Interim Patch Installer version 12.2.0.1.52
Copyright (c) 2026, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/19.0.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/19.0.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.52
OUI version       : 12.2.0.7.0
Log file location : /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-10_12-43-46PM_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 '/u01/app/19.0.0/grid'
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: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2026-08-10_12-43-46PM_1.log

OPatch succeeded.

real    1m53.438s
user    2m15.762s
sys     0m5.324s
[grid@PRODDB01 java8u501]$ $ORACLE_HOME/jdk/bin/java -version
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)
[grid@PRODDB01 java8u501]$ 
[grid@PRODDB01 ~]$ $ORACLE_HOME/OPatch/opatch lspatches
39329591;JDK BUNDLE PATCH 19.0.0.0.260721
39526364;OCW RELEASE UPDATE 19.32.0.0.0 (39526364)
39503034;ACFS RELEASE UPDATE 19.32.0.0.0 (39503034)
39472050;Database Release Update : 19.32.0.0.260721 (39472050)
39107855;TOMCAT RELEASE UPDATE 19.0.0.0.0 (39107855)
39107825;DBWLM RELEASE UPDATE 19.0.0.0.0 (39107825)

OPatch succeeded.
[grid@PRODDB01 ~]$
exit
logout

[grid@PRODDB02 java8u501]$

exit


#######---->5. Lock Node 1 Grid home

As root:

[root@PRODDB02 java8u501]# time $ORACLE_HOME/crs/install/rootcrs.sh -lock
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
/u01/app/grid/crsdata/hq01-ctsdb02/crsconfig/crslock_hq01-ctsdb02_2026-08-10_01-35-26PM.log
2026/08/10 13:35:27 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
[root@PRODDB02 java8u501]#


#######---->6. Update Node 1 OLR
This step is important.
This is the step that was initially missed in your first attempt.

Run as root:
[root@PRODDB01 java8u501]# time $ORACLE_HOME/bin/clscfg -localpatch
clscfg: EXISTING configuration version 0 detected.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.

real    0m2.116s
user    0m0.059s
sys     0m0.049s
[root@PRODDB01 java8u501]#




#######---->7. Verify Node 1 before starting CRS

Run:

$ORACLE_HOME/bin/crsctl query crs releasepatch
$ORACLE_HOME/bin/crsctl query crs softwarepatch
$ORACLE_HOME/bin/crsctl query crs activeversion -f

At this point it is normal for the values to look like:

Release patch level: 3250468106
Software patch level: 3250468106
Active patch level:   3004609525
Cluster state:        ROLLING PATCH

That means:

Node 1 has been patched, but the cluster as a whole has not yet been transitioned to the new patch level.
#######---->8. Start CRS on Node 1

As root:

[root@HQ01-CTSDB01 java8u501]# $ORACLE_HOME/bin/crsctl start crs -wait

Then:

[root@HQ01-CTSDB01 java8u501]# $ORACLE_HOME/bin/crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
[root@HQ01-CTSDB01 java8u501]#


#######---->9. Update OCR on Node 1
Run this as root.
[root@PRODDB01 ~]# $ORACLE_HOME/bin/clscfg -patch
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
[root@PRODDB01 ~]#

#######---->10. Verify Node 1

Run:

$ORACLE_HOME/bin/crsctl query crs releasepatch
$ORACLE_HOME/bin/crsctl query crs softwarepatch
$ORACLE_HOME/bin/crsctl query crs activeversion -f

At this stage, Node 1 should show:

Release patch level: 3250468106
Software patch level: 3250468106

The cluster may still show:

cluster upgrade state [ROLLING PATCH]
cluster active patch level [3004609525]

until the second node is completed.

#######---->11. Patch Node 2 — PRODDB02
Now repeat the same process on Node 2.

Because Node 1 is online, Node 2 can be taken down for patching.

As root on Node 2:

export ORACLE_HOME=/u01/app/19.0.0/grid
export PATH=$ORACLE_HOME/bin:$PATH

$ORACLE_HOME/bin/crsctl stop crs -f

Then:

$ORACLE_HOME/crs/install/rootcrs.sh -unlock

Switch to grid:

su - grid

export ORACLE_HOME=/u01/app/19.0.0/grid
export PATH=$ORACLE_HOME/bin:$PATH

cd /u02/19cSW/JDK_19_ALL/java8u501

$ORACLE_HOME/OPatch/opatch napply -id 39329591

$ORACLE_HOME/OPatch/opatch lspatches

$ORACLE_HOME/jdk/bin/java -version

exit

Then as root:

$ORACLE_HOME/crs/install/rootcrs.sh -lock

Then do not skip:

$ORACLE_HOME/bin/clscfg -localpatch

Start CRS:

$ORACLE_HOME/bin/crsctl start crs -wait

Verify:

$ORACLE_HOME/bin/crsctl check crs

Then update OCR:

$ORACLE_HOME/bin/clscfg -patch
#######---->12. Verify both nodes

On Node 1:

$ORACLE_HOME/bin/crsctl query crs softwarepatch

Expected:

Oracle Clusterware patch level on node hq01-ctsdb01 is [3250468106].

On Node 2:

$ORACLE_HOME/bin/crsctl query crs softwarepatch

Expected:

Oracle Clusterware patch level on node hq01-ctsdb02 is [3250468106].

Then from either node:

$ORACLE_HOME/bin/crsctl query crs activeversion -f

The desired final state is:

Oracle Clusterware active version on the cluster is [19.0.0.0.0].
The cluster upgrade state is [ROLLING PATCH].
The cluster active patch level is [3250468106].

#######---->13. Exit rolling patch mode

Once both nodes have:

softwarepatch = 3250468106

and both CRS stacks are healthy, run:

$ORACLE_HOME/bin/crsctl stop rollingpatch

Then verify:

-$ORACLE_HOME/bin/crsctl query crs activeversion -f

The final desired result is:

Oracle Clusterware active version on the cluster is [19.0.0.0.0].
The cluster upgrade state is [NORMAL].
The cluster active patch level is [3250468106].

#######----> stop start CRS and reboot nodes





#######----> The complete sequence at a glance to upgrade JDK in Grid Home

For your two-node cluster, the important sequence is:

                 START
                   |
                   v
       Verify both nodes healthy
                   |
                   v
       crsctl start rollingpatch (on NODE-2)
                   |
                   v
             ===== NODE 1 =====
                   |
            crsctl stop crs -f
                   |
           rootcrs.sh -unlock
                   |
          OPatch 39329591
                   |
           JDK -> 8u501
                   |
            rootcrs.sh -lock
                   |
          clscfg -localpatch
                   |
            crsctl start crs
                   |
            clscfg -patch
                   |
             Verify Node 1
                   |
             ===== NODE 2 =====
                   |
            crsctl stop crs -f
                   |
           rootcrs.sh -unlock
                   |
          OPatch 39329591
                   |
           JDK -> 8u501
                   |
            rootcrs.sh -lock
                   |
          clscfg -localpatch
                   |
            crsctl start crs
                   |
            clscfg -patch
                   |
             Verify Node 2
                   |
                   v
       crsctl stop rollingpatch
                   |
                   v
        Cluster state = NORMAL
        Active patch = 3250468106
        JDK = 8u501 on both nodes