Installing the Latest Oracle 19c Update Patches – Opatch/OJVM/GI/DB/JDK on Oracle 19c RAC on Linux

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


Part 6. Installing the Latest Oracle 19c Update Patches – Opatch/OJVM/GI/DB/JDK on Oracle 19c Standby on Linux


Part 7. Updating the Database’s COMPATIBLE parameter and ASM Diskgroups’ COMPATIBLE.ASM and COMPATIBLE.RDBMS to 19.0.0.0



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.