This post demonstrates the manual upgrade of Oracle 11g (11.2.0.4) database to 19c (19.3).
Note:
====
Before planning for the upgrade, make sure to follow the upgrade matrix.
Below are the minimum version of the database that can be directly upgraded to Oracle 19c.
Source Target
======= =======
11.2.0.4 19c
12.1.0.2 19c
12.2.0.1 19c
18.1 19c
1. Take the RMAN full backup of 11g DB.
2. Take the 11g ORACLE Home backup.
3. DIsable the custom triggers.
DIsable any DDL custom triggers. We can enable them once upgrade is completed.
4. Ensure DB backup is completed before upgrade.
SQL> SELECT * FROM v$backup WHERE status != ‘NOT ACTIVE’;
no rows selected
5. Check the invalid objects and make them valid. Also, SYS and SYSTEM objects should not be in invalid state.
SQL> select count(*) from dba_objects where status=’INVALID’;
COUNT(*)
———-
0
SQL> set lines 1234 pages 1234
col owner for a15
select owner,count(*) from dba_objects where status=’INVALID’ group by owner order by owner;
no rows selected
SQL> set lines 1234 pages 1234
col owner for a18
col object_name for a30
col object_type for a18
col status for a10
select owner,object_name,object_type,created,status from dba_objects where status = ‘INVALID’;
no rows selected
SQL> SELECT owner,object_name,object_type,status,created FROM dba_objects where status=’INVALID’ and owner=’SYS’;
no rows selected
SQL> SELECT owner,object_name,object_type,status,created FROM dba_objects where status=’INVALID’ and owner=’SYSTEM’;
no rows selected
6. Check the status of dba registry components before upgrade. All components should be in valid status.
SQL> set lines 1234 pages 1234
col comp_name for a50
col version for a15
col status for a10
SELECT comp_name, version, status FROM dba_registry;
COMP_NAME VERSION STATUS
————————————————– ————— ———-
OWB 11.2.0.4.0 VALID
Oracle Application Express 3.2.1.00.12 VALID
Oracle Enterprise Manager 11.2.0.4.0 VALID
OLAP Catalog 11.2.0.4.0 VALID
Spatial 11.2.0.4.0 VALID
Oracle Multimedia 11.2.0.4.0 VALID
Oracle XML Database 11.2.0.4.0 VALID
Oracle Text 11.2.0.4.0 VALID
Oracle Expression Filter 11.2.0.4.0 VALID
Oracle Rules Manager 11.2.0.4.0 VALID
Oracle Workspace Manager 11.2.0.4.0 VALID
Oracle Database Catalog Views 11.2.0.4.0 VALID
Oracle Database Packages and Types 11.2.0.4.0 VALID
JServer JAVA Virtual Machine 11.2.0.4.0 VALID
Oracle XDK 11.2.0.4.0 VALID
Oracle Database Java Packages 11.2.0.4.0 VALID
OLAP Analytic Workspace 11.2.0.4.0 VALID
Oracle OLAP API 11.2.0.4.0 VALID
18 rows selected.
—
SQL> set lines 1234 pages 1234
col action_time for a30
col action for a14
col namespace for a14
col version for a10
col comments for a60
col bundle_series for a14
select action_time, action, namespace, version, comments from dba_registry_history;
ACTION_TIME ACTION NAMESPACE VERSION COMMENTS
—————————— ————– ————– ———- ————————————————————
24-AUG-13 12.03.45.119862 PM APPLY SERVER 11.2.0.4 Patchset 11.2.0.2.0
27-OCT-23 03.12.35.474733 PM APPLY SERVER 11.2.0.4 Patchset 11.2.0.2.0
7. Take the compatible parameter value of 11g DB.
Min value of COMPATIBLE parameter to upgrade 19.1 is “11.2.0”, make sure you have COMPATIBLE parameter is set to 11.2.0 or greater.
SQL> show parameter compatible
NAME TYPE VALUE
———————————— ———– —————
compatible string 11.2.0.4.0
8. Take the time zone value of 11g DB.
Timezone should less than or equal to target database timezone version.
set linesize 300
col property_name for a30
col value for a20
SELECT PROPERTY_NAME, SUBSTR(property_value, 1, 30) value
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME LIKE ‘DST_%’
ORDER BY PROPERTY_NAME;
PROPERTY_NAME VALUE
—————————— ——————–
DST_PRIMARY_TT_VERSION 14
DST_SECONDARY_TT_VERSION 0
DST_UPGRADE_STATE NONE
—
SQL> col version for 999999999999999
select * from v$timezone_file;
FILENAME VERSION
——————– —————-
timezlrg_14.dat 14
8. Find the duplicate objects in the SYS and SYSTEM schema.
Ensure that you do not have duplicate objects in the SYS and SYSTEM schema.
Download dbupgdiag.sql from Doc Id 556610.1 to collect DB Upgrade/Migrate Diagnostic Information. The dbupgdiag.sql will generate log file and provife upgaraded related information.
9. Upgrade the APEX.
If APEX is installed in 11g DB, it is recommended to upgrade APEX before upgrading DB.
10. Disable the Custom Triggers.
Disable any custom triggers that would get executed before or after DDL statements. Re-enable them after the upgrade.
11. Enable archive mode and Fast Recovery Area (FRA).
SQL> select name,open_mode,log_mode from v$database;
NAME OPEN_MODE LOG_MODE
——— ——————– ————
ORA11G READ WRITE ARCHIVELOG
—
SQL> select flashback_on from v$database;
FLASHBACK_ON
——————
NO
SQL> show parameter recovery
NAME TYPE VALUE
———————————— ———– ——————————
db_recovery_file_dest string /u01/app/oracle/fast_recovery_
area
db_recovery_file_dest_size big integer 10G
recovery_parallelism integer 0
Create GRP
=========
SQL> CREATE RESTORE POINT BEFORE_UPGRADE GUARANTEE FLASHBACK DATABASE;
Restore point created.
12. Check the status of all materialized views (MV), and refresh any materialized views that are not fresh.
Use this procedure to query the system to determine if there are any materialized view refreshes still in progress.
SQL> SELECT o.name FROM sys.obj$ o, sys.user$ u, sys.sum$ s WHERE o.type# = 42 AND bitand(s.mflags, 8) =8;
no rows selected
Use below SQL to check COMPILATION_ERROR.
SQL> select owner, mview_name, staleness, compile_state from dba_mviews;
OWNER MVIEW_NAME STALENESS COMPILE_STATE
—————————— —————————— ——————- ————-
SYSMAN MGMT_ECM_MD_ALL_TBL_COLUMNS FRESH VALID
SH CAL_MONTH_SALES_MV UNKNOWN VALID
SH FWEEK_PSCAT_SALES_MV UNKNOWN VALID
SQL> EXECUTE DBMS_MVIEW.REFRESH(‘SH.CAL_MONTH_SALES_MV’, method => ‘C’);
PL/SQL procedure successfully completed.
SQL> EXECUTE DBMS_MVIEW.REFRESH(‘SH.FWEEK_PSCAT_SALES_MV’, method => ‘C’);
PL/SQL procedure successfully completed.
SQL> select owner, mview_name, staleness, compile_state from dba_mviews;
OWNER MVIEW_NAME STALENESS COMPILE_STATE
—————————— —————————— ——————- ——————
SYSMAN MGMT_ECM_MD_ALL_TBL_COLUMNS FRESH VALID
SH FWEEK_PSCAT_SALES_MV FRESH VALID
SH CAL_MONTH_SALES_MV FRESH VALID
13. Disable scheduled database custom jobs and cron jobs.
14. check the definition of the PUBLIC synonym AREA.
Before the upgrade, if Oracle Multimedia and/or Oracle Spatial is installed, check the definition of the PUBLICsynonym AREA. It should be defined to be a synonym for OGC_AREA, otherwise, it causes invalid db components uponaupgrading.
SQL> set linesize 300
SQL> select owner, synonym_name, table_owner, table_name from dba_synonyms where synonym_name =’AREA’;
OWNER SYNONYM_NAME TABLE_OWNER TABLE_NAME
—————————— —————————— —————————— ——————————
PUBLIC AREA MDSYS OGC_AREA
15. Gather dictionary statistics anf fixed objects stats before upgrade.
SQL> EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;
PL/SQL procedure successfully completed.
—
SQL> EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
PL/SQL procedure successfully completed.
16. Purge the Recycle bin before upgrade.
SQL> PURGE DBA_RECYCLEBIN;
DBA Recyclebin purged.
17. Increase the processes parameter value to 300, if it is lower than 300.
SQL> show parameter processes;
NAME TYPE VALUE
———————————— ———– ——————————
aq_tm_processes integer 1
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 150
SQL> alter system set processes=300 scope=spfile;
System altered.
SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 3607691264 bytes
Fixed Size 2258480 bytes
Variable Size 838863312 bytes
Database Buffers 2751463424 bytes
Redo Buffers 15106048 bytes
Database mounted.
Database opened.
SQL> show parameter processes;
NAME TYPE VALUE
———————————— ———– ——————————
aq_tm_processes integer 1
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 300
18. If any ACLs existed, need to take the backup.
set linesize 300
col acl for a60
col host for a14
SELECT acl, host, lower_port, upper_port FROM DBA_NETWORK_ACLS;
no rows selected
—
set linesize 300
col acl for a60
col principal for a20
col privilege for a16
SELECT acl, principal, privilege, is_grant FROM DBA_NETWORK_ACL_PRIVILEGES;
no rows selected
Refer Oracle Support Doc ID 1634275.1 for the script to take the backup of ACL in Oracle 11g.
19. In 11g database, Oracle Label Security and Oracle Database Vault are enabled, perform below steps. If OLS and Database Vault are not enabled, ignore this step.
To run the OLS preprocess script on a release 11.2 database before upgrading:
19.a. Copy the following scripts from the 19c Oracle home (19c) to the 11g Oracle home
ORACLE_HOME/rdbms/admin/olspreupgrade.sql
ORACLE_HOME/rdbms/admin/emremove.sql
ORACLE_HOME/olap/admin/catnoamd.sql
19.b. In 11g DB, connect as DVOWNER to the database.
19.c. Run the following statement:
SQL> GRANT DV_PATCH_ADMIN to SYS;
19.d. Now, connect SYS as SYSDBA
CONNECT SYS AS SYSDBA
19.e. Run the below preprocess scripts for Data Vault
ORACLE_HOME/rdbms/admin/olspreupgrade.sql
ORACLE_HOME/rdbms/admin/emremove.sql
ORACLE_HOME/olap/admin/catnoamd.sql
You may continue to run your applications on the database while the preprocess scripts are
19.f. After the olspreupgrade.sql completes its run successfully, connect to the 11g database as DVOWNER.
19.g. Run the following SQL statement:
SQL> REVOKE DV_PATCH_ADMIN from SYS;
20. Removing DB Control with emremove.sql (For Oracle Database releases earlier than 12.1) and removing OLAP Catalog in 11g DB.
Warning: The below step should not be executed during the upgrade of Enterprise Manager Cloud Control Repository database andlead the EM Cloud Control Repository DB to unusable.
Stop DB Console:
emctl stop dbconsole
Execute emremove.sql script. The script will be located in target 19c $ORACLE_HOME/rdbms/admin/
copy the script from 19c $ORACLE_HOME/rdbms/admin/ to 11g $ORACLE_HOME/rdbms/admin/
cp /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/emremove.sql /u01/app/oracle/product/11.0.0/db_1/rdbms/admin
SQL>SET ECHO ON
SQL>SET SERVEROUTPUT ON
SQL> @/u01/app/oracle/product/11.0.0/db_1/rdbms/admin/emremove.sql
old 70: IF (upper(‘&LOGGING’) = ‘VERBOSE’)
new 70: IF (upper(‘VERBOSE’) = ‘VERBOSE’)
PL/SQL procedure successfully completed.
After execution and completion of emremove.sql completes,if below directories existed, we must manually remove below directories from file system.
$ORACLE_HOME/HOSTNAME_SID
$ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_HOSTNAME_SID directories from your file system.
—
SQL> set lines 1234 pages 1234
col comp_name for a50
col status for a15
SELECT comp_name, status FROM dba_registry WHERE comp_name LIKE ‘%OLAP%’;
COMP_NAME STATUS
————————————————– —————
OLAP Analytic Workspace VALID
Oracle OLAP API VALID
OLAP Catalog VALID
Starting with Oracle Database 12c, the OLAP Catalog (OLAP AMD) is desupported and will be automatically marked as OPTION OFF during the database upgrade if present. Oracle recommends removing OLAP Catalog (OLAP AMD) before database upgrade. This step can be manually performed before the upgrade to reduce downtime.
Remove OLAP Catalog by running the 11.2.0.4.0 SQL script. This script removes dictionary components and the OLAPSYS schema objects.
SQL> @$ORACLE_HOME/olap/admin/catnoamd.sql
21. Check the below tablespaces size and add necessary space to the tablespaces.
Make sure to have enough size in SYSAUX, SYSTEM, UNDO and TEMP tablespaces.
Add appropriate size based on the recommendation provided by preupgrade.
22. Copying Transparent Encryption Oracle Wallets from 11g to 19c home.
If Oracle wallet with Transparent Data Encryption (TDE) implemented in TDE, and using Database Upgrade Assistant (DBUA) to upgrade the database, then copy the sqlnet.ora and wallet file to the 19c Oracle home.
You must copy the sqlnet.ora and the wallet file manually before starting the upgrade.
1. Log in as an authorized user.
2. Manually copy the sqlnet.ora file, and the wallet file, ewallet.p12, to the 19c Oracle home.
3. Open the Oracle wallet in mount.
For example:
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM SET ENCRYPTION WALLET OPEN;
23. Check the user accounts use Case-Insensitive password version.
If there are any 10g versions, suggest to fix 10g versions, failing to do so, user accounts will LOCKED after upgrade.
SQL> set lines 1234 pages 1234
SELECT USERNAME,PASSWORD_VERSIONS FROM DBA_USERS;
USERNAME PASSWORD
—————————— ——–
SYS 10G 11G
SYSTEM 10G 11G
RAM 10G 11G
OUTLN 10G 11G
FLOWS_FILES 10G 11G
MDSYS 10G 11G
ORDSYS 10G 11G
EXFSYS 10G 11G
DBSNMP 10G 11G
WMSYS 10G 11G
APPQOSSYS 10G 11G
APEX_030200 10G 11G
OWBSYS_AUDIT 10G 11G
ORDDATA 10G 11G
CTXSYS 10G 11G
ANONYMOUS
XDB 10G 11G
ORDPLUGINS 10G 11G
OWBSYS 10G 11G
SI_INFORMTN_SCHEMA 10G 11G
OLAPSYS 10G 11G
SCOTT 10G 11G
ORACLE_OCM 10G 11G
XS$NULL 11G
BI 10G 11G
PM 10G 11G
MDDATA 10G 11G
IX 10G 11G
SH 10G 11G
DIP 10G 11G
OE 10G 11G
APEX_PUBLIC_USER 10G 11G
HR 10G 11G
SPATIAL_CSW_ADMIN_USR 10G 11G
SPATIAL_WFS_ADMIN_USR 10G 11G
35 rows selected.
—
SQL> select USERNAME, PASSWORD_VERSIONS from DBA_USERS where PASSWORD_VERSIONS like ‘%10G%’ and USERNAME <> ‘ANONYMOUS’;
USERNAME PASSWORD
—————————— ——–
RAM 10G 11G
SYS 10G 11G
SYSTEM 10G 11G
FLOWS_FILES 10G 11G
MDSYS 10G 11G
ORDSYS 10G 11G
EXFSYS 10G 11G
DBSNMP 10G 11G
SCOTT 10G 11G
WMSYS 10G 11G
ORACLE_OCM 10G 11G
APPQOSSYS 10G 11G
APEX_030200 10G 11G
OWBSYS_AUDIT 10G 11G
BI 10G 11G
PM 10G 11G
MDDATA 10G 11G
IX 10G 11G
ORDDATA 10G 11G
CTXSYS 10G 11G
SH 10G 11G
OUTLN 10G 11G
DIP 10G 11G
OE 10G 11G
APEX_PUBLIC_USER 10G 11G
HR 10G 11G
XDB 10G 11G
SPATIAL_CSW_ADMIN_USR 10G 11G
SPATIAL_WFS_ADMIN_USR 10G 11G
ORDPLUGINS 10G 11G
OWBSYS 10G 11G
SI_INFORMTN_SCHEMA 10G 11G
OLAPSYS 10G 11G
33 rows selected.
24. Check the RMAN catalog version, need to upgrade RMAN catalog after database upgrade.
For more information, refer Oracle Support Doc – RMAN Compatibility Matrix (Doc ID 73431.1)
25. Download the latest Preupgrade.jar and then run the Preupgrade utility.
Download the Preupgrade.jar from Doc ID 884522.1 and replace with the old one of 19c.
cd /u01/app/oracle/product/19.0.0/db_1/rdbms/admin
[oracle@prod admin]$ ls -lrt preupgrade*
-rw-r–r– 1 oracle oinstall 455876 Feb 26 2019 preupgrade_package.sql
-rw-r–r– 1 oracle oinstall 100166 Feb 26 2019 preupgrade_messages.properties
-rw-r–r– 1 oracle oinstall 725089 Apr 17 2019 preupgrade.jar
mv preupgrade_package.sql preupgrade_package.sql_old
mv preupgrade_messages.properties preupgrade_messages.properties_old
mv preupgrade.jar preupgrade.jar_old
[oracle@prod admin]$ ls -lrt preupgrade*
-rw-r–r– 1 oracle oinstall 455876 Feb 26 2019 preupgrade_package.sql_old
-rw-r–r– 1 oracle oinstall 100166 Feb 26 2019 preupgrade_messages.properties_old
-rw-r–r– 1 oracle oinstall 725089 Apr 17 2019 preupgrade.jar_old
[oracle@prod admin]$ unzip 884522.1-UPGRADE_19_13_LF-preupgrade_19_cbuild_13_lf.zip
Archive: 884522.1-UPGRADE_19_13_LF-preupgrade_19_cbuild_13_lf.zip
replace preupgrade_package.sql? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: preupgrade_package.sql
replace preupgrade_driver.sql? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: preupgrade_driver.sql
replace dbms_registry_extended.sql? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: dbms_registry_extended.sql
replace parameters.properties? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: parameters.properties
replace preupgrade_messages.properties? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: preupgrade_messages.properties
replace components.properties? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: components.properties
replace preupgrade.jar? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: preupgrade.jar
[oracle@prod admin]$ ls -lrt preupgrade*
-rw-r–r– 1 oracle oinstall 455876 Feb 26 2019 preupgrade_package.sql_old
-rw-r–r– 1 oracle oinstall 100166 Feb 26 2019 preupgrade_messages.properties_old
-rw-r–r– 1 oracle oinstall 725089 Apr 17 2019 preupgrade.jar_old
-rw-r–r– 1 oracle oinstall 7884 Feb 9 2022 preupgrade_driver.sql
-rw-r–r– 1 oracle oinstall 111417 Mar 17 2022 preupgrade_messages.properties
-rw-r–r– 1 oracle oinstall 490480 Mar 18 2022 preupgrade_package.sql
-rw-r–r– 1 oracle oinstall 771683 Mar 18 2022 preupgrade.jar
——–
Now, set the environment to 11g home and run the preupgrade utility.
export ORACLE_SID=ora11g
export ORACLE_HOME=/u01/app/oracle/product/11.0.0/db_1
export PATH=/u01/app/oracle/product/11.0.0/db_1/bin
/u01/app/oracle/product/11.0.0/db_1/jdk/bin/java -jar /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/preupgrade.jar TERMINAL FILE DIR /u01/app/oracle/cfgtoollogs/upgrade/preupgrade
[oracle@prod ~]$ /u01/app/oracle/product/11.0.0/db_1/jdk/bin/java -jar /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/preupgrade.jar TERMINAL FILE DIR /u01/app/oracle/cfgtoollogs/upgrade/preupgrade
==================
PREUPGRADE SUMMARY
==================
/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/preupgrade.log
/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/preupgrade_fixups.sql
/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/postupgrade_fixups.sql
Execute fixup scripts as indicated below:
Before upgrade:
Log into the database and execute the preupgrade fixups
@/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/preupgrade_fixups.sql
After the upgrade:
Log into the database and execute the postupgrade fixups
@/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/postupgrade_fixups.sql
Preupgrade complete: 2026-03-16T14:23:04
——–
Now, run the preupgrade_fixups.sql in 11g DB.
SQL> @/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/preupgrade_fixups.sql
Executing Oracle PRE-Upgrade Fixup Script
Auto-Generated by: Oracle Preupgrade Script
Version: 19.0.0.0.0 Build: 13
Generated on: 2026-03-16 14:36:36
For Source Database: ORA11G
Source Database Version: 11.2.0.4.0
For Upgrade to Version: 19.0.0.0.0
Preup Preupgrade
Action Issue Is
Number Preupgrade Check Name Remedied Further DBA Action
—— ———————— ———- ——————————–
1. apex_manual_upgrade NO Manual fixup recommended.
2. component_info NO Informational only.
Further action is optional.
3. exf_rul_exists NO Informational only.
Further action is optional.
4. rman_recovery_version NO Informational only.
Further action is optional.
5. invalid_all_obj_info NO Informational only.
Further action is optional.
The fixup scripts have been run and resolved what they can. However,
there are still issues originally identified by the preupgrade that
have not been remedied and are still present in the database.
Depending on the severity of the specific issue, and the nature of
the issue itself, that could mean that your database is not ready
for upgrade. To resolve the outstanding issues, start by reviewing
the preupgrade_fixups.sql and searching it for the name of
the failed CHECK NAME or Preupgrade Action Number listed above.
There you will find the original corresponding diagnostic message
from the preupgrade which explains in more detail what still needs
to be done.
PL/SQL procedure successfully completed.
—
Ignoring below recommended action as is demo environment.
Preup Preupgrade
Action Issue Is
Number Preupgrade Check Name Remedied Further DBA Action
—— ———————— ———- ——————————–
1. apex_manual_upgrade NO Manual fixup recommended.
26. Upgrade the 11g DB by manual method.
Shutdown the 11g DB
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
—
Set the environment to target database 19c.
[oracle@prod ~]$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_1
[oracle@prod ~]$ export PATH=$ORACLE_HOME/bin:$PATH
[oracle@prod ~]$ export ORACLE_SID=ora11g
[oracle@prod ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/19.0.0/db_1
[oracle@prod dbs]$ echo $ORACLE_SID
ora11g
[oracle@prod ~]$ echo $PATH
/u01/app/oracle/product/19.0.0/db_1/bin:.:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/ bin:/home/oracle/bin:/home/oracle/.local/bin:/home/oracle/bin:/usr/bin:/bin: /usr/local/bin:/u01/app/oracle/product/11.0.0/db_1/bin
—
copy the SPFILE.ORA or INIT.ORA from 11g home to 19c home.
[oracle@prod ~]$ cp /u01/app/oracle/product/11.0.0/db_1/dbs/spfileora11g.ora /u01/app/oracle/product/19.0.0/db_1/dbs/
—
Start the upgrade:
=============
[oracle@prod ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 – Production on Mon Mar 16 14:56:00 2026
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup upgrade
ORACLE instance started.
Total System Global Area 1593831936 bytes
Fixed Size 8897024 bytes
Variable Size 385875968 bytes
Database Buffers 1191182336 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
—-
[oracle@prod ~]$ cd $ORACLE_HOME/bin
[oracle@prod bin]$ ./dbupgrade
Argument list for [/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/catctl.pl]
For Oracle internal use only A = 0
Run in c = 0
Do not run in C = 0
Input Directory d = 0
Echo OFF e = 1
Simulate E = 0
Forced cleanup F = 0
Log Id i = 0
Child Process I = 0
Log Dir l = 0
Priority List Name L = 0
Upgrade Mode active M = 0
SQL Process Count n = 0
SQL PDB Process Count N = 0
Open Mode Normal o = 0
Start Phase p = 0
End Phase P = 0
Reverse Order r = 0
AutoUpgrade Resume R = 0
Script s = 0
Serial Run S = 0
RO User Tablespaces T = 0
Display Phases y = 0
Debug catcon.pm z = 0
Debug catctl.pl Z = 0
catctl.pl VERSION: [19.0.0.0.0]
STATUS: [Production]
BUILD: [RDBMS_19.3.0.0.0DBRU_LINUX.X64_190417]
/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0/db_1]
/u01/app/oracle/product/19.0.0/db_1/bin/orabasehome = [/u01/app/oracle/product/19.0.0/db_1]
catctlGetOraBaseLogDir = [/u01/app/oracle/product/19.0.0/db_1]
Analyzing file /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/catupgrd.sql
Log file directory = [/tmp/cfgtoollogs/upgrade20260316145833]
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/tmp/cfgtoollogs/upgrade20260316145833/catupgrd_catcon_23039.lst]
catcon::set_log_file_base_path: catcon: See [/tmp/cfgtoollogs/upgrade20260316145833/catupgrd*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/tmp/cfgtoollogs/upgrade20260316145833/catupgrd_*.lst] files for spool files, if any
Number of Cpus = 2
Database Name = ora11g
DataBase Version = 11.2.0.4.0
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/catupgrd_catcon_23039.lst]
catcon::set_log_file_base_path: catcon: See [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/catupgrd*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/catupgrd_*.lst] files for spool files, if any
Log file directory = [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844]
Parallel SQL Process Count = 4
Components in [ora11g]
Installed [APEX APS CATALOG CATJAVA CATPROC CONTEXT JAVAVM ORDIM OWM SDO XDB XML XOQ]
Not Installed [DV EM MGW ODM OLS RAC WK]
——————————————————
Phases [0-107] Start Time:[2026_03_16 14:58:57]
——————————————————
*********** Executing Change Scripts ***********
Serial Phase #:0 [ora11g] Files:1 Time: 76s
*************** Catalog Core SQL ***************
Serial Phase #:1 [ora11g] Files:5 Time: 59s
Restart Phase #:2 [ora11g] Files:1 Time: 3s
*********** Catalog Tables and Views ***********
Parallel Phase #:3 [ora11g] Files:19 Time: 29s
Restart Phase #:4 [ora11g] Files:1 Time: 4s
************* Catalog Final Scripts ************
Serial Phase #:5 [ora11g] Files:7 Time: 22s
***************** Catproc Start ****************
Serial Phase #:6 [ora11g] Files:1 Time: 15s
***************** Catproc Types ****************
Serial Phase #:7 [ora11g] Files:2 Time: 12s
Restart Phase #:8 [ora11g] Files:1 Time: 3s
**************** Catproc Tables ****************
Parallel Phase #:9 [ora11g] Files:67 Time: 30s
Restart Phase #:10 [ora11g] Files:1 Time: 4s
************* Catproc Package Specs ************
Serial Phase #:11 [ora11g] Files:1 Time: 70s
Restart Phase #:12 [ora11g] Files:1 Time: 4s
************** Catproc Procedures **************
Parallel Phase #:13 [ora11g] Files:94 Time: 8s
Restart Phase #:14 [ora11g] Files:1 Time: 3s
Parallel Phase #:15 [ora11g] Files:120 Time: 14s
Restart Phase #:16 [ora11g] Files:1 Time: 2s
Serial Phase #:17 [ora11g] Files:22 Time: 4s
Restart Phase #:18 [ora11g] Files:1 Time: 2s
***************** Catproc Views ****************
Parallel Phase #:19 [ora11g] Files:32 Time: 20s
Restart Phase #:20 [ora11g] Files:1 Time: 3s
Serial Phase #:21 [ora11g] Files:3 Time: 10s
Restart Phase #:22 [ora11g] Files:1 Time: 4s
Parallel Phase #:23 [ora11g] Files:25 Time: 86s
Restart Phase #:24 [ora11g] Files:1 Time: 4s
Parallel Phase #:25 [ora11g] Files:12 Time: 64s
Restart Phase #:26 [ora11g] Files:1 Time: 4s
Serial Phase #:27 [ora11g] Files:1 Time: 0s
Serial Phase #:28 [ora11g] Files:3 Time: 5s
Serial Phase #:29 [ora11g] Files:1 Time: 0s
Restart Phase #:30 [ora11g] Files:1 Time: 4s
*************** Catproc CDB Views **************
Serial Phase #:31 [ora11g] Files:1 Time: 2s
Restart Phase #:32 [ora11g] Files:1 Time: 3s
Serial Phase #:34 [ora11g] Files:1 Time: 0s
***************** Catproc PLBs *****************
Serial Phase #:35 [ora11g] Files:293 Time: 20s
Serial Phase #:36 [ora11g] Files:1 Time: 0s
Restart Phase #:37 [ora11g] Files:1 Time: 3s
Serial Phase #:38 [ora11g] Files:6 Time: 6s
Restart Phase #:39 [ora11g] Files:1 Time: 3s
*************** Catproc DataPump ***************
Serial Phase #:40 [ora11g] Files:3 Time: 36s
Restart Phase #:41 [ora11g] Files:1 Time: 4s
****************** Catproc SQL *****************
Parallel Phase #:42 [ora11g] Files:13 Time: 50s
Restart Phase #:43 [ora11g] Files:1 Time: 4s
Parallel Phase #:44 [ora11g] Files:11 Time: 8s
Restart Phase #:45 [ora11g] Files:1 Time: 3s
Parallel Phase #:46 [ora11g] Files:3 Time: 3s
Restart Phase #:47 [ora11g] Files:1 Time: 2s
************* Final Catproc scripts ************
Serial Phase #:48 [ora11g] Files:1 Time: 9s
Restart Phase #:49 [ora11g] Files:1 Time: 2s
************** Final RDBMS scripts *************
Serial Phase #:50 [ora11g] Files:1 Time: 19s
************ Upgrade Component Start ***********
Serial Phase #:51 [ora11g] Files:1 Time: 2s
Restart Phase #:52 [ora11g] Files:1 Time: 4s
********** Upgrading Java and non-Java *********
Serial Phase #:53 [ora11g] Files:2 Time: 283s
***************** Upgrading XDB ****************
Restart Phase #:54 [ora11g] Files:1 Time: 3s
Serial Phase #:56 [ora11g] Files:3 Time: 18s
Serial Phase #:57 [ora11g] Files:3 Time: 5s
Parallel Phase #:58 [ora11g] Files:10 Time: 5s
Parallel Phase #:59 [ora11g] Files:25 Time: 7s
Serial Phase #:60 [ora11g] Files:4 Time: 9s
Serial Phase #:61 [ora11g] Files:1 Time: 0s
Serial Phase #:62 [ora11g] Files:32 Time: 6s
Serial Phase #:63 [ora11g] Files:1 Time: 0s
Parallel Phase #:64 [ora11g] Files:6 Time: 9s
Serial Phase #:65 [ora11g] Files:2 Time: 14s
Serial Phase #:66 [ora11g] Files:3 Time: 44s
**************** Upgrading ORDIM ***************
Restart Phase #:67 [ora11g] Files:1 Time: 4s
Serial Phase #:69 [ora11g] Files:1 Time: 5s
Parallel Phase #:70 [ora11g] Files:2 Time: 28s
Restart Phase #:71 [ora11g] Files:1 Time: 4s
Parallel Phase #:72 [ora11g] Files:2 Time: 4s
Serial Phase #:73 [ora11g] Files:2 Time: 4s
***************** Upgrading SDO ****************
Restart Phase #:74 [ora11g] Files:1 Time: 3s
Serial Phase #:76 [ora11g] Files:1 Time: 27s
Serial Phase #:77 [ora11g] Files:2 Time: 5s
Restart Phase #:78 [ora11g] Files:1 Time: 4s
Serial Phase #:79 [ora11g] Files:1 Time: 15s
Restart Phase #:80 [ora11g] Files:1 Time: 3s
Parallel Phase #:81 [ora11g] Files:3 Time: 41s
Restart Phase #:82 [ora11g] Files:1 Time: 5s
Serial Phase #:83 [ora11g] Files:1 Time: 6s
Restart Phase #:84 [ora11g] Files:1 Time: 3s
Serial Phase #:85 [ora11g] Files:1 Time: 9s
Restart Phase #:86 [ora11g] Files:1 Time: 2s
Parallel Phase #:87 [ora11g] Files:4 Time: 60s
Restart Phase #:88 [ora11g] Files:1 Time: 4s
Serial Phase #:89 [ora11g] Files:1 Time: 4s
Restart Phase #:90 [ora11g] Files:1 Time: 2s
Serial Phase #:91 [ora11g] Files:2 Time: 10s
Restart Phase #:92 [ora11g] Files:1 Time: 4s
Serial Phase #:93 [ora11g] Files:1 Time: 2s
Restart Phase #:94 [ora11g] Files:1 Time: 2s
******* Upgrading ODM, WK, EXF, RUL, XOQ *******
Serial Phase #:95 [ora11g] Files:1 Time: 16s
Restart Phase #:96 [ora11g] Files:1 Time: 4s
*********** Final Component scripts ***********
Serial Phase #:97 [ora11g] Files:1 Time: 3s
************* Final Upgrade scripts ************
Serial Phase #:98 [ora11g] Files:1 Time: 188s
******************* Migration ******************
Serial Phase #:99 [ora11g] Files:1 Time: 30s
*** End PDB Application Upgrade Pre-Shutdown ***
Serial Phase #:100 [ora11g] Files:1 Time: 2s
Serial Phase #:101 [ora11g] Files:1 Time: 0s
Serial Phase #:102 [ora11g] Files:1 Time: 59s
***************** Post Upgrade *****************
Serial Phase #:103 [ora11g] Files:1 Time: 23s
**************** Summary report ****************
Serial Phase #:104 [ora11g] Files:1 Time: 2s
*** End PDB Application Upgrade Post-Shutdown **
Serial Phase #:105 [ora11g] Files:1 Time: 3s
Serial Phase #:106 [ora11g] Files:1 Time: 0s
Serial Phase #:107 [ora11g] Files:1 Time: 34s
——————————————————
Phases [0-107] End Time:[2026_03_16 15:28:35]
——————————————————
Grand Total Time: 1779s
LOG FILES: (/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/catupgrd*.log)
Upgrade Summary Report Located in:
/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/upg_summary.log
Grand Total Upgrade Time: [0d:0h:29m:39s]
—
[oracle@prod bin]$ cat /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/ora11g/upgrade20260316145844/upg_summary.log
Oracle Database Release 19 Post-Upgrade Status Tool 03-16-2026 15:27:5
Database Name: ORA11G
Component Current Full Elapsed Time
Name Status Version HH:MM:SS
Oracle Server UPGRADED 19.3.0.0.0 00:12:23
JServer JAVA Virtual Machine UPGRADED 19.3.0.0.0 00:03:00
Oracle XDK UPGRADED 19.3.0.0.0 00:00:19
Oracle Database Java Packages UPGRADED 19.3.0.0.0 00:00:07
OLAP Analytic Workspace UPGRADED 19.3.0.0.0 00:00:09
Oracle Text UPGRADED 19.3.0.0.0 00:00:30
Oracle Workspace Manager UPGRADED 19.3.0.0.0 00:00:31
Oracle Real Application Clusters OPTION OFF 19.3.0.0.0 00:00:00
Oracle XML Database UPGRADED 19.3.0.0.0 00:01:52
Oracle Multimedia UPGRADED 19.3.0.0.0 00:00:40
Spatial UPGRADED 19.3.0.0.0 00:03:15
Oracle OLAP API UPGRADED 19.3.0.0.0 00:00:07
Datapatch 00:02:59
Final Actions 00:03:38
Post Upgrade 00:00:19
Total Upgrade Time: 00:27:51
Database time zone version is 14. It is older than current release time
zone version 32. Time zone upgrade is needed using the DBMS_DST package.
Grand Total Upgrade Time: [0d:0h:29m:39s]
27. Post upgrade, check the DB version.
[oracle@prod ~]$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_1
[oracle@prod ~]$ export ORACLE_SID=ora11g
[oracle@prod ~]$ export PATH=/u01/app/oracle/product/19.0.0/db_1/bin
[oracle@prod ~]$ sqlplus -V
SQL*Plus: Release 19.0.0.0.0 – Production
Version 19.3.0.0.0
SQL> startup
ORACLE instance started.
Total System Global Area 1593831936 bytes
Fixed Size 8897024 bytes
Variable Size 503316480 bytes
Database Buffers 1073741824 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
SQL> select name,version,status from v$database, v$instance;
NAME VERSION STATUS
——— —————– ————
ORA11G 19.0.0.0.0 OPEN
SQL> select banner_full from v$version;
BANNER_FULL
——————————————————————————–
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production
Version 19.3.0.0.0
28. Post upgrade, check the invalid objects and make them valid. Also, SYS and SYSTEM objects should not be in invalid state.
Run the utlrp.sql for any invalid objects.
@$ORACLE_HOME/rdbms/admin/utlrp.sql
SQL> select count(*) from dba_objects where status=’INVALID’;
COUNT(*)
———-
0
29. Post upgrade, check the status of dba registry components before upgrade. All components should be in valid status.
set lines 1234 pages 1234
col comp_name for a50
col version for a15
col status for a10
SELECT comp_name, version, status FROM dba_registry;
COMP_NAME VERSION STATUS
————————————————– ————— ———-
Oracle Database Catalog Views 19.0.0.0.0 VALID
Oracle Database Packages and Types 19.0.0.0.0 VALID
JServer JAVA Virtual Machine 19.0.0.0.0 VALID
Oracle XDK 19.0.0.0.0 VALID
Oracle Database Java Packages 19.0.0.0.0 VALID
OLAP Analytic Workspace 19.0.0.0.0 VALID
Oracle Real Application Clusters 19.0.0.0.0 OPTION OFF
Oracle Workspace Manager 19.0.0.0.0 VALID
Oracle Text 19.0.0.0.0 VALID
Oracle XML Database 19.0.0.0.0 VALID
Oracle Multimedia 19.0.0.0.0 VALID
Spatial 19.0.0.0.0 VALID
Oracle OLAP API 19.0.0.0.0 VALID
Oracle Application Express 3.2.1.00.12 VALID
14 rows selected.
—
set lines 1234 pages 1234
col action_time for a30
col action for a14
col namespace for a14
col version for a10
col comments for a60
col bundle_series for a14
select action_time,action,namespace,version,comments from dba_registry_history;
ACTION_TIME ACTION NAMESPACE VERSION COMMENTS
—————————— ————– ————– ———- ————————————————————
24-AUG-13 12.03.45.119862 PM APPLY SERVER 11.2.0.4 Patchset 11.2.0.2.0
27-OCT-23 03.12.35.474733 PM APPLY SERVER 11.2.0.4 Patchset 11.2.0.2.0
BOOTSTRAP DATAPATCH 19 RDBMS_19.3.0.0.0DBRU_LINUX.X64_190417
16-MAR-26 03.25.45.587090 PM RU_APPLY SERVER 19.0.0.0.0 Patch applied on 19.3.0.0.0: Release_Update – 190410122720
16-MAR-26 03.27.35.208634 PM UPGRADE SERVER 19.0.0.0.0 Upgraded from 11.2.0.4.0 to 19.3.0.0.0
30. Run the post upgrae fixup script.
@/u01/app/oracle/cfgtoollogs/upgrade/preupgrade/postupgrade_fixups.sql
Executing Oracle POST-Upgrade Fixup Script
Auto-Generated by: Oracle Preupgrade Script
Version: 19.0.0.0.0 Build: 13
Generated on: 2026-03-16 14:36:38
For Source Database: ORA11G
Source Database Version: 11.2.0.4.0
For Upgrade to Version: 19.0.0.0.0
Preup Preupgrade
Action Issue Is
Number Preupgrade Check Name Remedied Further DBA Action
—— ———————— ———- ——————————–
6. depend_usr_tables YES None.
7. old_time_zones_exist NO Manual fixup recommended.
8. dir_symlinks YES None.
9. post_dictionary YES None.
10. post_fixed_objects NO Informational only.
Further action is optional.
11. upg_by_std_upgrd YES None.
The fixup scripts have been run and resolved what they can. However,
there are still issues originally identified by the preupgrade that
have not been remedied and are still present in the database.
Depending on the severity of the specific issue, and the nature of
the issue itself, that could mean that your database upgrade is not
fully complete. To resolve the outstanding issues, start by reviewing
the postupgrade_fixups.sql and searching it for the name of
the failed CHECK NAME or Preupgrade Action Number listed above.
There you will find the original corresponding diagnostic message
from the preupgrade which explains in more detail what still needs
to be done.
PL/SQL procedure successfully completed.
Session altered.
31. Post upgrade, update the time zone value of 19c DB.
Run below SQL to for time zone update, the utltz_upg_apply.sql will bounce the DB for twice.
@$ORACLE_HOME/rdbms/admin/utltz_countstats.sql
@$ORACLE_HOME/rdbms/admin/utltz_countstar.sql
@$ORACLE_HOME/rdbms/admin/utltz_upg_check.sql
@$ORACLE_HOME/rdbms/admin/utltz_upg_apply.sql
—
SQL> @$ORACLE_HOME/rdbms/admin/utltz_upg_check.sql
Session altered.
INFO: Starting with RDBMS DST update preparation.
INFO: NO actual RDBMS DST update will be done by this script.
INFO: If an ERROR occurs the script will EXIT sqlplus.
INFO: Doing checks for known issues …
INFO: Database version is 19.0.0.0 .
INFO: Database RDBMS DST version is DSTv14 .
INFO: No known issues detected.
INFO: Now detecting new RDBMS DST version.
A prepare window has been successfully started.
INFO: Newest RDBMS DST version detected is DSTv32 .
INFO: Next step is checking all TSTZ data.
INFO: It might take a while before any further output is seen …
A prepare window has been successfully ended.
INFO: A newer RDBMS DST version than the one currently used is found.
INFO: Note that NO DST update was yet done.
INFO: Now run utltz_upg_apply.sql to do the actual RDBMS DST update.
INFO: Note that the utltz_upg_apply.sql script will
INFO: restart the database 2 times WITHOUT any confirmation or prompt.
Session altered.
—
SQL> @$ORACLE_HOME/rdbms/admin/utltz_upg_apply.sql
Session altered.
INFO: If an ERROR occurs, the script will EXIT SQL*Plus.
INFO: The database RDBMS DST version will be updated to DSTv32 .
WARNING: This script will restart the database 2 times
WARNING: WITHOUT asking ANY confirmation.
WARNING: Hit control-c NOW if this is not intended.
INFO: Restarting the database in UPGRADE mode to start the DST upgrade.
Database closed.
Database dismounted.
ORACLE instance shut down.
ORACLE instance started.
Total System Global Area 1593831936 bytes
Fixed Size 8897024 bytes
Variable Size 603979776 bytes
Database Buffers 973078528 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
INFO: Starting the RDBMS DST upgrade.
INFO: Upgrading all SYS owned TSTZ data.
INFO: It might take time before any further output is seen …
An upgrade window has been successfully started.
INFO: Restarting the database in NORMAL mode to upgrade non-SYS TSTZ data.
Database closed.
Database dismounted.
ORACLE instance shut down.
ORACLE instance started.
Total System Global Area 1593831936 bytes
Fixed Size 8897024 bytes
Variable Size 603979776 bytes
Database Buffers 973078528 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
INFO: Upgrading all non-SYS TSTZ data.
INFO: It might take time before any further output is seen …
INFO: Do NOT start any application yet that uses TSTZ data!
INFO: Next is a list of all upgraded tables:
Table list: “MDSYS”.”SDO_DIAG_MESSAGES_TABLE”
Number of failures: 0
Table list: “IX”.”AQ$_ORDERS_QUEUETABLE_L”
Number of failures: 0
Table list: “IX”.”AQ$_ORDERS_QUEUETABLE_S”
Number of failures: 0
Table list: “IX”.”AQ$_STREAMS_QUEUE_TABLE_L”
Number of failures: 0
Table list: “IX”.”AQ$_STREAMS_QUEUE_TABLE_S”
Number of failures: 0
Table list: “GSMADMIN_INTERNAL”.”AQ$_CHANGE_LOG_QUEUE_TABLE_L”
Number of failures: 0
Table list: “GSMADMIN_INTERNAL”.”AQ$_CHANGE_LOG_QUEUE_TABLE_S”
Number of failures: 0
INFO: Total failures during update of TSTZ data: 0 .
An upgrade window has been successfully ended.
INFO: Your new Server RDBMS DST version is DSTv32 .
INFO: The RDBMS DST update is successfully finished.
INFO: Make sure to exit this SQL*Plus session.
INFO: Do not use it for timezone related selects.
Session altered.
—
set linesize 300
col property_name for a30
col value for a20
SELECT PROPERTY_NAME, SUBSTR(property_value, 1, 30) value
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME LIKE ‘DST_%’
ORDER BY PROPERTY_NAME;
PROPERTY_NAME VALUE
—————————— ——————–
DST_PRIMARY_TT_VERSION 32
DST_SECONDARY_TT_VERSION 0
DST_UPGRADE_STATE NONE
3 rows selected.
—
col version for 9999999999999
SELECT * FROM v$timezone_file;
FILENAME VERSION CON_ID
——————– ————– ———-
timezlrg_32.dat 32 0
1 row selected.
32. Compile Fixed objects stats.
SQL> EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
PL/SQL procedure successfully completed.
33.Performother post checks.
34. Post upgrade, update the compatible parameter value after application testing.
After successful application testing, update the compatible parameter.
SQL> show parameter compatible
Disclaimer:
Please note the above information is only for educational purpose and practised in personal test database only. Always test in test database before implementing in production database. The pre-requisites and ways of implementing may vary from one environment to another. Hence, not providing guarantee that it will work in your environment.