In this part of the series, we will install the latest available Oracle 19c Update Patches on the Oracle RAC nodes. This is the fifth part of a 7-part series that includes:
Part 1. Upgrading the Oracle Grid Infrastructure on the Physical Standby from 18c to 19c
Part 2. Upgrading the Oracle Grid Infrastructure on the Physical Standby from 18c to 19c
Part 3. Upgrade Oracle RAC Database from 18c to 19c
Part 4. Upgrade Oracle Physical Standby Database from 18c to 19c
Part 5. Installing the Latest Oracle 19c Update Patches – Opatch/OJVM/GI/DB/JDK on Oracle 19c RAC on Linux
For the purpose of this guide, note the following:
-To make following this guide easier, put all your downloaded software in /usr/software/oracle.
-GI stands for Grid Infrastructure, also known as Oracle Restart for Standalone Databases.
-DB stands for Database.
-DB Home owner is Linux OS user “oracle”.
-OS Version: Oracle Linux Server release 7.5
-Source GI/DB Version: 18.14.0.0
-Target GI/DB Version: 19.3.0.0
-Source 18c DB Home: /oracle/oraBase/oracle/18.0.0/database.
-Target 19c DB Home: /oracle/oraBase/oracle/19.0.0/database.
-GI Home owner is Linux OS user “grid”.
-Source 18c GI Home: /oracle/oraBase/18.0.0/grid.
-Target 19c GI Home: /oracle/oraBase/19.0.0/grid.
-DG stands for Data Guard.
-ALWAYS make a backup of the database and the oracle software before you start.
Primary RAC DB Name: PROD
RAC Node 1: rac1
SID: PROD1
RAC Node 2: rac2
SID: PROD2
—
Standby DB Name: PRODDR
Physical Standby Node: stdby1
SID: PRODDR
1. Prerequisites and Preparations
1.1 Download the following software:
-The latest OPatch from Oracle Support
-The latest 19c Update Patches
-The latest JDK for GI and DB Homes
Note: The JDK is for GI and DB Homes, not to be confused with the JDK that is installed directly on the OS. That is not covered here.
1.2 As root, give access permission to /usr/software/oracle. Then as oracle user, unzip the OJVM/GI/DB PSU and the JDK Patch. Do this on both rac1 and rac2.
# chmod 777 /usr/software/oracle
# su - oracle
$ cd /usr/software/oracle
$ unzip -oq p36209493_190000_Linux-x86-64.zip
$ unzip -oq p36195566_190000_Linux-x86-64.zip
$ ls -l
drwxr-xr-x 4 oracle oinstall 4096 Mar 25 01:10 36195566 <-- JDK
drwxrwxrwx 4 oracle oinstall 4096 Apr 16 03:29 36209493 <-- OJMV Combo (OJVM, GI, DB)
$ ls -l 36209493
drwxr-xr-x 4 oracle oinstall 4096 Mar 12 17:07 36199232 <-- OJVM RU
drwxr-x--- 8 oracle oinstall 4096 Apr 12 03:03 36233126 <-- GI/DB RU
1.3 As root user, give access permissions to both oracle and grid users. Do this on both rac1 and rac2.
# chmod -R 775 /usr/software/oracle/36195566
# chmod -R 775 /usr/software/oracle/36209493
# chmod 777 $(find /usr/software/oracle/36195566 -type d)
# chmod 777 $(find /usr/software/oracle/36209493 -type d)
1.4 Verify your /tmp is executable on both RAC nodes. If necessary, remount it as executable.
# mount|grep "/tmp"
/dev/mapper/rootvg-tmplv on /tmp type ext4 (rw,relatime,data=ordered)
# mount -o remount,exec /tmp
Alternatively, you can also specify tmp to be elsewhere.
Here’s an example of using a non-default temp location for GI/DB Home when executing the patches as root user.
# mkdir -p /home/grid/tmp
# chown grid.oinstall /home/grid/tmp
# chmod 777 /home/grid/tmp
# export TMP=/home/grid/tmp
# export TMPDIR=/home/grid/tmp
1.5 Verify all objects in all containers are valid before patching.
1.5.1 Check all containers. There are 3 containers in this database: CDB$ROOT (root container), PDB$SEED (seed database), PROD1PDB (pluggable database).
# su - oracle
$ sqlplus / as sysdba
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PROD1PDB READ WRITE NO
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------------
63674 VALID
SQL> alter session set container=PROD1PDB;
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------------
64041 VALID
108 INVALID
1.5.2 If you have any invalid objects, recompile them.
SQL> @?/rdbms/admin/utlrp.sql
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------------
64150 VALID
SQL> alter session set container=PDB$SEED;
Session altered.
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------------
62570 VALID
1.5.3 The seed database is read only and should not have any invalid objects. But if it does have invalid objects, we need to make it read-write, recompile the objects, then make it read-only again.
1.5.3.1 To recompile objects in the SEED database on RAC, first close the SEED Database on PROD2 instance on node rac2.
SQL> alter session set "_oracle_script" = true;
Session altered.
SQL> alter pluggable database pdb$seed close;
Pluggable database altered.
1.5.3.2 Open the SEED Database read write on PROD1 instance on node rac1 and execute utlrp.sql to recompile the invalid objects.
SQL> alter session set "_oracle_script" = true;
Session altered.
SQL> alter pluggable database pdb$seed close;
Pluggable database altered.
SQL> alter pluggable database pdb$seed open read write;
Pluggable database altered.
SQL> @?/rdbms/admin/utlrp.sql
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------
63982 VALID
SQL> alter pluggable database pdb$seed close;
Pluggable database altered.
SQL> alter pluggable database pdb$seed open read only;
Pluggable database altered.
SQL> alter session set "_oracle_script" = false;
1.5.3.3 On PROD2, open the SEED Database read only.
SQL> alter pluggable database pdb$seed open read only;
Pluggable database altered.
SQL> alter session set "_oracle_script" = false;
2. Install the latest OPatch in DB Home. As user oracle, run all the commands in section 2.x on both RAC nodes.
2.1 Backup the old OPatch.
$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.17
OPatch succeeded.
$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch.12.2.0.1.17
2.2 Unzip the OPatch into DB Home.
$ unzip -oq p6880880_230000_Linux-x86-64.zip -d $ORACLE_HOME
$ ls -ld $ORACLE_HOME/OPatch*
drwxr-x--- 14 oracle oinstall 4096 Apr 15 03:43 /oracle/oraBase/oracle/19.0.0/database/OPatch
drwxr-x--- 14 oracle oinstall 4096 Jun 18 12:10 /oracle/oraBase/oracle/19.0.0/database/OPatch.12.2.0.1.17
2.3 Check the new OPatch version.
$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.42
OPatch succeeded.
2.4 Check current patches in the DB Home.
$ opatch lsinventory|grep -A3 "^Patch.*applied"
Patch 29585399 : applied on Thu Apr 18 00:21:33 PDT 2019
Unique Patch ID: 22840393
Patch description: "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)"
Created on 9 Apr 2019, 19:12:47 hrs PST8PDT
--
Patch 29517242 : applied on Thu Apr 18 00:21:17 PDT 2019
Unique Patch ID: 22862832
Patch description: "Database Release Update : 19.3.0.0.190416 (29517242)"
Created on 17 Apr 2019, 23:27:10 hrs PST8PDT
2.5 Check current JDK version in DB Home.
$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
3. Install the latest OPatch in GI Home. As user grid, run all the commands in step 3.x on both RAC nodes. Outputs are from rac1 only.
3.1 As root, verify the permissions for important files that can cause patch to fail if not set correctly.
# chmod 6751 /oracle/oraBase/19.0.0/grid/bin/oracle
# ls -l /oracle/oraBase/19.0.0/grid/bin/oracle
-rwsr-s--x 1 grid oinstall 436994240 Sep 26 17:09 /oracle/oraBase/19.0.0/grid/bin/oracle
# chmod 6751 /oracle/oraBase/oracle/19.0.0/database/bin/oracle
# ls -l /oracle/oraBase/oracle/19.0.0/database/bin/oracle
-rwsr-s--x 1 oracle asmadmin 459656152 Sep 26 17:55 /oracle/oraBase/oracle/19.0.0/database/bin/oracle
# chown oracle.oinstall /oracle/oraBase/grid/crsdata/rac1/output/crsd_oraagent_oracle
# chown oracle.oinstall /oracle/oraBase/grid/crsdata/rac1/output/crsd_oraagent_oracleOUT.trc
3.2 Backup the old OPatch.
$ opatch version
OPatch Version: 12.2.0.1.17
$ mv /oracle/oraBase/19.0.0/grid/OPatch /oracle/oraBase/19.0.0/grid/OPatch.12.2.0.1.17
3.3 Unzip the latest OPatch into GI Home.
$ unzip -oq /usr/software/oracle/patches/p6880880_230000_Linux-x86-64.zip -d /oracle/oraBase/19.0.0/grid/
$ ls -ld /oracle/oraBase/19.0.0/grid/OPatch*
drwxr-x--- 14 grid oinstall 4096 Apr 15 03:43 /oracle/oraBase/19.0.0/grid/OPatch
drwxr-x--- 14 grid oinstall 4096 Jun 17 17:10 /oracle/oraBase/19.0.0/grid/OPatch.12.2.0.1.17
3.4 Check the OPatch version.
$ opatch version
OPatch Version: 12.2.0.1.42
OPatch succeeded.
3.5 Check current patches in the GI Home.
$ opatch lsinv|grep -A3 "^Patch.*applied"
Patch 29585399 : applied on Thu Apr 18 00:36:24 PDT 2019
Unique Patch ID: 22840393
Patch description: "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)"
Created on 9 Apr 2019, 19:12:47 hrs PST8PDT
--
Patch 29517247 : applied on Thu Apr 18 00:36:02 PDT 2019
Unique Patch ID: 22840392
Patch description: "ACFS RELEASE UPDATE 19.3.0.0.0 (29517247)"
Created on 1 Apr 2019, 15:08:20 hrs PST8PDT
--
Patch 29517242 : applied on Thu Apr 18 00:35:39 PDT 2019
Unique Patch ID: 22862832
Patch description: "Database Release Update : 19.3.0.0.190416 (29517242)"
Created on 17 Apr 2019, 23:27:10 hrs PST8PDT
--
Patch 29401763 : applied on Thu Apr 18 00:35:16 PDT 2019
Unique Patch ID: 22759421
Patch description: "TOMCAT RELEASE UPDATE 19.0.0.0.0 (29401763)"
Created on 11 Apr 2019, 22:26:25 hrs PST8PDT
3.6 Check current JDK version in GI Home.
$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
4. As root user, apply the GI/DB RU (Patch 33509923) to grid and oracle homes. This will apply the software patches to both grid and db homes. It will also apply the sql patches to the database. We need to apply the patches on both RAC nodes.
4.1 Verify database is up and all PDB are open. As oracle, run:
Note: It will skip applying the patches to the oracle home when the database was down.
$ srvctl status db -d PROD
Instance PROD1 is running on node rac1
Instance PROD2 is running on node rac2
$ sqlplus / as sysdba
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PROD1PDB READ WRITE NO
4.2 As root, apply the GI/DB RU to grid and oracle homes. First apply on rac1. When rac1 completes, apply on rac2.
Note: We are using the /usr/software/oracle as the working directory so both grid and oracle user must have full access to it.
4.2.1 Apply the patches on rac1:
# cd /usr/software/oracle
# /oracle/oraBase/19.0.0/grid/OPatch/opatchauto apply /usr/software/oracle/36209493/36233126
OPatchauto session is initiated at Mon Jul 1 14:39:28 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-01_02-39-34PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-01_02-40-51PM.log
The id for this session is NACG
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Executing patch validation checks on home /oracle/oraBase/oracle/19.0.0/database
Patch validation checks successfully completed on home /oracle/oraBase/oracle/19.0.0/database
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
SQL patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_prepatch_apply_inplace_rac1_2024-07-01_02-44-29PM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Performing prepatch operation on home /oracle/oraBase/oracle/19.0.0/database
Prepatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/oracle/19.0.0/database
Binary patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
Running rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Performing postpatch operation on home /oracle/oraBase/oracle/19.0.0/database
Postpatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_postpatch_apply_inplace_rac1_2024-07-01_03-06-36PM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
No step execution required.........
Trying to apply SQL patch on home /oracle/oraBase/oracle/19.0.0/database
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:rac1
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SKIPPED:
Patch: /usr/software/oracle/36209493/36233126/36233343
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /usr/software/oracle/36209493/36233126/36383196
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /usr/software/oracle/36209493/36233126/36460248
Reason: This patch is not applicable to this specified target type - "rac_database"
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36233126/36233263
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-45-45PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36240578
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-45-45PM_1.log
Host:rac1
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36233126/36233263
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-57-05PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36233343
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-57-05PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36240578
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-57-05PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36383196
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-57-05PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36460248
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_14-57-05PM_1.log
OPatchauto session completed at Mon Jul 1 15:12:27 2024
Time taken to complete the session 32 minutes, 53 seconds
4.2.2 Apply the patches on rac2:
# cd /usr/software/oracle
# /oracle/oraBase/19.0.0/grid/OPatch/opatchauto apply /usr/software/oracle/36209493/36233126
OPatchauto session is initiated at Mon Jul 1 17:41:09 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-01_05-41-15PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-01_05-42-33PM.log
The id for this session is W5YP
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
SQL patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_prepatch_apply_inplace_rac2_2024-07-01_05-50-55PM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_postpatch_apply_inplace_rac2_2024-07-01_06-01-23PM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
No step execution required.........
OPatchAuto successful.
--------------------------------Summary--------------------------------
Patching is completed successfully. Please find the summary as follows:
Host:rac2
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SKIPPED:
Patch: /usr/software/oracle/36209493/36233126/36233343
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /usr/software/oracle/36209493/36233126/36383196
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /usr/software/oracle/36209493/36233126/36460248
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /usr/software/oracle/36209493/36233126/36240578
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-44-15PM_1.log
Reason: /usr/software/oracle/36209493/36233126/36240578 is not required to be applied to oracle home /oracle/oraBase/oracle/19.0.0/database
Patch: /usr/software/oracle/36209493/36233126/36233263
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-44-15PM_1.log
Reason: /usr/software/oracle/36209493/36233126/36233263 is not required to be applied to oracle home /oracle/oraBase/oracle/19.0.0/database
Host:rac2
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36233126/36233263
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-52-12PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36233343
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-52-12PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36240578
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-52-12PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36383196
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-52-12PM_1.log
Patch: /usr/software/oracle/36209493/36233126/36460248
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-01_17-52-12PM_1.log
OPatchauto session completed at Mon Jul 1 18:19:52 2024
Time taken to complete the session 38 minutes, 37 seconds
5 Apply the OJVM patch (Patch 33561310). This will apply to both GI Home and the DB Home and will apply sql patch to the database. We need to apply the patches on both RAC nodes.
5.1 rac1
5.1.1 Verify database is up. As oracle, run:
$ srvctl status db -d PROD
Instance PROD1 is running on node rac1
Instance PROD2 is running on node rac2
5.1.2 As root, apply the patch by executing:
# cd /usr/software/oracle
# export PATH=$PATH:/oracle/oraBase/19.0.0/grid/OPatch
# opatchauto apply /usr/software/oracle/36209493/36199232
OPatchauto session is initiated at Tue Jul 9 12:34:36 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-09_12-34-40PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-09_12-35-08PM.log
The id for this session is S5I8
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Executing patch validation checks on home /oracle/oraBase/oracle/19.0.0/database
Patch validation checks successfully completed on home /oracle/oraBase/oracle/19.0.0/database
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
SQL patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Bringing down database service on home /oracle/oraBase/oracle/19.0.0/database
Following database(s) and/or service(s) are stopped and will be restarted later during the session: prod
Database service successfully brought down on home /oracle/oraBase/oracle/19.0.0/database
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_prepatch_apply_inplace_rac1_2024-07-09_12-39-03AM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Performing prepatch operation on home /oracle/oraBase/oracle/19.0.0/database
Prepatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/oracle/19.0.0/database
Binary patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
Running rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Performing postpatch operation on home /oracle/oraBase/oracle/19.0.0/database
Postpatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_postpatch_apply_inplace_rac1_2024-07-09_12-43-22AM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Starting database service on home /oracle/oraBase/oracle/19.0.0/database
Database service successfully started on home /oracle/oraBase/oracle/19.0.0/database
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
Prepared home /oracle/oraBase/oracle/19.0.0/database successfully after database service restarted
Trying to apply SQL patch on home /oracle/oraBase/oracle/19.0.0/database
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:rac1
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36199232
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_12-40-21PM_1.log
Host:rac1
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36199232
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_12-42-00PM_1.log
OPatchauto session completed at Tue Jul 9 12:47:13 2024
Time taken to complete the session 12 minutes, 39 seconds
5.2 rac2:
5.2.1 Verify database is up. As oracle, run:
$ srvctl status database -d PROD
Instance PROD1 is running on node rac1
Instance PROD2 is running on node rac2
5.2.2 As root, apply the patch by executing:
# cd /usr/software/oracle
# export PATH=$PATH:/oracle/oraBase/19.0.0/grid/OPatch
# opatchauto apply /usr/software/oracle/36209493/36199232
OPatchauto session is initiated at Tue Jul 9 12:57:45 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-09_12-57-49PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-09_12-58-17PM.log
The id for this session is 6NWJ
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Executing patch validation checks on home /oracle/oraBase/oracle/19.0.0/database
Patch validation checks successfully completed on home /oracle/oraBase/oracle/19.0.0/database
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
SQL patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Bringing down database service on home /oracle/oraBase/oracle/19.0.0/database
Following database(s) and/or service(s) are stopped and will be restarted later during the session: prod
Database service successfully brought down on home /oracle/oraBase/oracle/19.0.0/database
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_prepatch_apply_inplace_rac2_2024-07-09_01-03-18PM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Performing prepatch operation on home /oracle/oraBase/oracle/19.0.0/database
Prepatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/oracle/19.0.0/database
Binary patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
Running rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Performing postpatch operation on home /oracle/oraBase/oracle/19.0.0/database
Postpatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_postpatch_apply_inplace_rac2_2024-07-09_01-08-53PM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Starting database service on home /oracle/oraBase/oracle/19.0.0/database
Database service successfully started on home /oracle/oraBase/oracle/19.0.0/database
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
No step execution required.........
Trying to apply SQL patch on home /oracle/oraBase/oracle/19.0.0/database
SQL patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
OPatchAuto successful.
--------------------------------Summary--------------------------------
Patching is completed successfully. Please find the summary as follows:
Host:rac2
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36199232
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_13-05-30PM_1.log
Host:rac2
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36209493/36199232
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_13-07-26PM_1.log
OPatchauto session completed at Tue Jul 9 13:35:28 2024
Time taken to complete the session 37 minutes, 45 seconds
6 Apply the JDK patch. This will apply to both GI Home and the DB Home, including applying sql patch to the database. Apply the patches on both RAC nodes.
6.1 rac1
6.1.1 Verify database is running. As oracle, run:
$ srvctl status db -d PROD
Instance PROD1 is running on node rac1
Instance PROD2 is running on node rac2
6.1.2 As root, apply the patch by executing:
# cd /usr/software/oracle
# export PATH=$PATH:/oracle/oraBase/19.0.0/grid/OPatch
# opatchauto apply /usr/software/oracle/36195566
OPatchauto session is initiated at Tue Jul 9 13:44:36 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-09_01-44-39PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-09_01-45-06PM.log
The id for this session is 5UW4
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Executing patch validation checks on home /oracle/oraBase/oracle/19.0.0/database
Patch validation checks successfully completed on home /oracle/oraBase/oracle/19.0.0/database
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
No sqlpatch prereq operations are required on the local node for this home
No step execution required.........
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Bringing down database service on home /oracle/oraBase/oracle/19.0.0/database
No step execution required.........
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_prepatch_apply_inplace_rac1_2024-07-09_01-46-59PM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Performing prepatch operation on home /oracle/oraBase/oracle/19.0.0/database
Prepatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/oracle/19.0.0/database
Binary patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
Running rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Performing postpatch operation on home /oracle/oraBase/oracle/19.0.0/database
Postpatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac1/crsconfig/crs_postpatch_apply_inplace_rac1_2024-07-09_01-51-12PM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Starting database service on home /oracle/oraBase/oracle/19.0.0/database
No step execution required.........
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
Prepared home /oracle/oraBase/oracle/19.0.0/database successfully after database service restarted
Trying to apply SQL patch on home /oracle/oraBase/oracle/19.0.0/database
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:rac1
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36195566
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_13-48-25PM_1.log
Host:rac1
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36195566
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_13-49-57PM_1.log
OPatchauto session completed at Tue Jul 9 13:54:56 2024
Time taken to complete the session 10 minutes, 22 seconds
6.2 rac2
6.2.1 Verify database is running. As oracle, run:
$ srvctl status db -d PROD
Instance PROD1 is running on node rac1
Instance PROD2 is running on node rac2
6.2.2 As root, apply the patch by executing:
# cd /usr/software/oracle
# export PATH=$PATH:/oracle/oraBase/19.0.0/grid/OPatch
# opatchauto apply /usr/software/oracle/36195566
OPatchauto session is initiated at Tue Jul 9 14:01:34 2024
System initialization log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2024-07-09_02-01-37PM.log.
Session log file is /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/opatchauto2024-07-09_02-02-06PM.log
The id for this session is AURI
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/19.0.0/grid
Patch applicability verified successfully on home /oracle/oraBase/19.0.0/grid
Executing OPatch prereq operations to verify patch applicability on home /oracle/oraBase/oracle/19.0.0/database
Patch applicability verified successfully on home /oracle/oraBase/oracle/19.0.0/database
Executing patch validation checks on home /oracle/oraBase/19.0.0/grid
Patch validation checks successfully completed on home /oracle/oraBase/19.0.0/grid
Executing patch validation checks on home /oracle/oraBase/oracle/19.0.0/database
Patch validation checks successfully completed on home /oracle/oraBase/oracle/19.0.0/database
Verifying SQL patch applicability on home /oracle/oraBase/oracle/19.0.0/database
No sqlpatch prereq operations are required on the local node for this home
No step execution required.........
Preparing to bring down database service on home /oracle/oraBase/oracle/19.0.0/database
Successfully prepared home /oracle/oraBase/oracle/19.0.0/database to bring down database service
Bringing down database service on home /oracle/oraBase/oracle/19.0.0/database
No step execution required.........
Performing prepatch operations on CRS - bringing down CRS service on home /oracle/oraBase/19.0.0/grid
Prepatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_prepatch_apply_inplace_rac2_2024-07-09_02-03-57PM.log
CRS service brought down successfully on home /oracle/oraBase/19.0.0/grid
Performing prepatch operation on home /oracle/oraBase/oracle/19.0.0/database
Prepatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/oracle/19.0.0/database
Binary patch applied successfully on home /oracle/oraBase/oracle/19.0.0/database
Running rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/oracle/19.0.0/database
Performing postpatch operation on home /oracle/oraBase/oracle/19.0.0/database
Postpatch operation completed successfully on home /oracle/oraBase/oracle/19.0.0/database
Start applying binary patch on home /oracle/oraBase/19.0.0/grid
Binary patch applied successfully on home /oracle/oraBase/19.0.0/grid
Running rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Successfully executed rootadd_rdbms.sh on home /oracle/oraBase/19.0.0/grid
Performing postpatch operations on CRS - starting CRS service on home /oracle/oraBase/19.0.0/grid
Postpatch operation log file location: /oracle/oraBase/grid/crsdata/rac2/crsconfig/crs_postpatch_apply_inplace_rac2_2024-07-09_02-09-29PM.log
CRS service started successfully on home /oracle/oraBase/19.0.0/grid
Starting database service on home /oracle/oraBase/oracle/19.0.0/database
No step execution required.........
Preparing home /oracle/oraBase/oracle/19.0.0/database after database service restarted
No step execution required.........
Trying to apply SQL patch on home /oracle/oraBase/oracle/19.0.0/database
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:rac2
RAC Home:/oracle/oraBase/oracle/19.0.0/database
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36195566
Log: /oracle/oraBase/oracle/19.0.0/database/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_14-06-23PM_1.log
Host:rac2
CRS Home:/oracle/oraBase/19.0.0/grid
Version:19.0.0.0.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /usr/software/oracle/36195566
Log: /oracle/oraBase/19.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-07-09_14-08-10PM_1.log
OPatchauto session completed at Tue Jul 9 14:16:32 2024
Time taken to complete the session 15 minutes, 0 second
7 Verify patches are applied on both RAC nodes.
Note: Only outputs for rac1 are shown. Should be identical on rac2.
7.1 DB Home
7.1.1 As oracle, execute the following to verify that the patches are installed.
$ opatch lsinventory|grep -A3 "^Patch.*applied"
Patch 36195566 : applied on Tue Jul 09 13:49:41 PDT 2024
Unique Patch ID: 25615984
Patch description: "JDK BUNDLE PATCH 19.0.0.0.240416"
Created on 25 Mar 2024, 01:10:20 hrs PST8PDT
--
Patch 36199232 : applied on Tue Jul 09 12:41:17 PDT 2024
Unique Patch ID: 25601966
Patch description: "OJVM RELEASE UPDATE: 19.23.0.0.240416 (36199232)"
Created on 12 Mar 2024, 17:07:05 hrs UTC
--
Patch 36240578 : applied on Mon Jul 01 14:55:58 PDT 2024
Unique Patch ID: 25625545
Patch description: "OCW RELEASE UPDATE 19.23.0.0.0 (36240578)"
Created on 1 Apr 2024, 03:00:31 hrs PST8PDT
--
Patch 36233263 : applied on Mon Jul 01 14:52:47 PDT 2024
Unique Patch ID: 25638263
Patch description: "Database Release Update : 19.23.0.0.240416 (36233263)"
Created on 8 Apr 2024, 17:16:56 hrs UTC
7.1.2 Check JDK
$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_411"
Java(TM) SE Runtime Environment (build 1.8.0_411-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.411-b09, mixed mode)
7.2 GI Home
7.2.1 As user grid,execute the following to verify that the patches are installed.
$ opatch lsinventory|grep -A3 "^Patch.*applied"
Patch 36195566 : applied on Tue Jul 09 13:51:00 PDT 2024
Unique Patch ID: 25615984
Patch description: "JDK BUNDLE PATCH 19.0.0.0.240416"
Created on 25 Mar 2024, 01:10:20 hrs PST8PDT
--
Patch 36199232 : applied on Tue Jul 09 12:42:45 PDT 2024
Unique Patch ID: 25601966
Patch description: "OJVM RELEASE UPDATE: 19.23.0.0.240416 (36199232)"
Created on 12 Mar 2024, 17:07:05 hrs UTC
--
Patch 36460248 : applied on Mon Jul 01 15:05:36 PDT 2024
Unique Patch ID: 25623983
Patch description: "TOMCAT RELEASE UPDATE 19.0.0.0.0 (36460248)"
Created on 29 Mar 2024, 14:15:01 hrs PST8PDT
--
Patch 36383196 : applied on Mon Jul 01 15:05:24 PDT 2024
Unique Patch ID: 25597177
Patch description: "DBWLM RELEASE UPDATE 19.0.0.0.0 (36383196)"
Created on 8 Mar 2024, 05:51:56 hrs PST8PDT
--
Patch 36240578 : applied on Mon Jul 01 15:05:05 PDT 2024
Unique Patch ID: 25625545
Patch description: "OCW RELEASE UPDATE 19.23.0.0.0 (36240578)"
Created on 1 Apr 2024, 03:00:31 hrs PST8PDT
--
Patch 36233343 : applied on Mon Jul 01 15:04:34 PDT 2024
Unique Patch ID: 25625322
Patch description: "ACFS RELEASE UPDATE 19.23.0.0.0 (36233343)"
Created on 1 Apr 2024, 04:44:36 hrs PST8PDT
--
Patch 36233263 : applied on Mon Jul 01 15:01:39 PDT 2024
Unique Patch ID: 25638263
Patch description: "Database Release Update : 19.23.0.0.240416 (36233263)"
Created on 8 Apr 2024, 17:16:56 hrs UTC
7.2.2 Check JDK
$ $ORACLE_HOME/jdk/bin/java -version
java version "1.8.0_411"
Java(TM) SE Runtime Environment (build 1.8.0_411-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.411-b09, mixed mode)
7.3 Check Database
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PROD1PDB READ WRITE NO
SQL> set line 180 pages 999
SQL> col ACTION_TIME for A30
SQL> col STATUS for A15
SQL> col DESCRIPTION for A65
SQL> select action_time,status,description from DBA_REGISTRY_SQLPATCH;
ACTION_TIME STATUS DESCRIPTION
------------------------------ --------------- -----------------------------------------------------------------
18-JUN-24 05.20.04.469754 PM SUCCESS Database Release Update : 19.3.0.0.190416 (29517242)
09-JUL-24 01.17.31.657073 PM SUCCESS OJVM RELEASE UPDATE: 19.23.0.0.240416 (36199232)
09-JUL-24 01.26.31.550368 PM SUCCESS Database Release Update : 19.23.0.0.240416 (36233263)
SQL> col jdk_version for a25
SQL> select dbms_java.get_jdk_version() JDK_VERSION from dual;
JDK_VERSION
-------------------------
1.8.0_411
SQL> alter session set container=PDB$SEED;
Session altered.
SQL> select action_time,status,description from DBA_REGISTRY_SQLPATCH;
ACTION_TIME STATUS DESCRIPTION
------------------------------ --------------- -----------------------------------------------------------------
18-JUN-24 06.09.57.427894 PM SUCCESS Database Release Update : 19.3.0.0.190416 (29517242)
09-JUL-24 01.28.44.330928 PM SUCCESS OJVM RELEASE UPDATE: 19.23.0.0.240416 (36199232)
09-JUL-24 01.33.57.315352 PM SUCCESS Database Release Update : 19.23.0.0.240416 (36233263)
SQL> select dbms_java.get_jdk_version() JDK_VERSION from dual;
JDK_VERSION
-------------------------
1.8.0_411
SQL> alter session set container=PROD1PDB;
Session altered.
SQL> select action_time,status,description from DBA_REGISTRY_SQLPATCH;
ACTION_TIME STATUS DESCRIPTION
------------------------------ --------------- -----------------------------------------------------------------
18-JUN-24 06.09.54.789173 PM SUCCESS Database Release Update : 19.3.0.0.190416 (29517242)
09-JUL-24 01.27.48.635802 PM SUCCESS OJVM RELEASE UPDATE: 19.23.0.0.240416 (36199232)
09-JUL-24 01.34.45.517188 PM SUCCESS Database Release Update : 19.23.0.0.240416 (36233263)
SQL> select dbms_java.get_jdk_version() JDK_VERSION from dual;
JDK_VERSION
-------------------------
1.8.0_411
7.4 Verify objects are valid. Go here if you need to fix invalid objects.
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PROD1PDB READ WRITE NO
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------
65081 VALID
SQL> alter session set container=pdb$seed;
Session altered.
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------
63982 VALID
SQL> alter session set container=prod1pdb;
Session altered.
SQL> select count(*), status from dba_objects group by status;
COUNT(*) STATUS
---------- ---------------
65568 VALID
Congratulations! You have applied all the Oracle Patches on both RAC nodes.