Oracle 12c To 19c Database Upgrade
Oracle 12c To 19c Database Upgrade
Pre-upgrade tasks
Pre-Upgrade Tasks
Make sure you backup your database before performing the upgrade and also check application compatibility with
the new version of the Oracle database.
Direct upgrade to 19c is possible for 11.2.0.4, 12.1.0.2, 12.2.0.1 and 18c versions. The upgrade steps are all
same for the various supported versions.
Run the 19c pre-install package on Linux to complete all OS level pre-requisites
yum update -y
unzip LINUX.X64_193000_db_home.zip
./runinstaller
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 1/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 2/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 3/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 4/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 5/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 6/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 7/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 8/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 9/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 10/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
/u01/app/oracle/product/12.2.0.1/db_home/jdk/bin/java -jar /u
01/app/oracle/product/19.3.0/db_home/rdbms/admin/preupgrade.jar FILE
DIR /home/oracle/preupgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 11/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
cat /home/oracle/preupgrade/preupgrade.log
@/home/oracle/preupgrade/preupgrade_fixups.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 12/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
All looks good in our case, lets move to verify tablespace sizes for upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 13/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
select
c.tablespace_name,a.autoextensible,a.file_name,a.total_space,b.free_spa
ce, round(b.free_space/a.total_space *100,2) "Free%",a.max_space from
(select file_id,file_name,sum(bytes)/1024/1024
total_space,sum(MAXBYTES)/1024/1024/1024 max_space,autoextensible from
dba_data_files group by file_id,file_name,autoextensible) a,(select
file_id,nvl(sum(bytes)/1024/1024,0) free_space from dba_free_space
group by file_id) b, (select tablespace_name,file_id from
dba_data_files) c where a.file_id=b.file_id(+) and a.file_id=c.file_id
order by tablespace_name;
EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;
PURGE DBA_RECYCLEBIN;
Refresh MVs
declare
begin
end;
Verify archive log dest size and Create Flashback Guaranteed Restore Point
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 14/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 15/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Run DBUA
cd /u01/app/oracle/product/19.3.0/db_home/bin/
./dbua
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 16/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 17/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 18/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 19/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 20/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 21/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 22/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 23/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 24/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Database upgrade has been completed successfully, and the database is ready for use!
Verify /etc/oratab and check if ORACLE_HOME location has changed to 19c home
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 25/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Verify DBA_REGISTRY
Run postupgrade_fixups.sql, this script already ran by DBUA under the post-upgrade section. However, we have
executed it again
SQL> @/home/oracle/preupgrade/postupgrade_fixups.sq
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 26/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 27/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 28/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
If the value of the COMPATIBLE parameter is changed to 19.0.0 then if for some reasons database needs to be
downgraded to 12.2.0.1 the DBA would not have any option other than export/import to downgrade the database.
But if this parameter is left unchanged for some time to see how the database performs after upgrade then it is
very easy and fast to downgrade the database if for some reason it is required to be downgraded.
SQL> startup;
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 29/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
All the steps will be same until we fire DBUA in our previous upgrade method. Shutdown the database
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 30/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Copy init and password files from 12c to 19c dbs home
cd $ORACLE_HOME/dbs
ls -ltr
ls -ltr /u01/app/oracle/product/19.3.0/db_home/dbs/
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/db_home
export ORACLE_SID=prod
sqlplus / as sysdba
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 31/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Run dbupgrade
cd /u01/app/oracle/product/19.3.0/db_home/bin
ls -ltr dbupgrade
jobs -l
disown
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 32/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
cd /u01/app/oracle/product/19.3.0/db_home/bin
more nohup.out
cd
/u01/app/oracle/product/19.3.0/db_home/cfgtoollogs/prod/upgrade20210131
020428/
ls -ltr *.log
tail -f catupgrd0.log
tail -f catupgrd1.log
tail -f catupgrd2.log
tail -f catupgrd3.log
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 33/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Summary Report
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/db_home
export ORACLE_SID=prod
sqlplus / as sysdba
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 34/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
startup;
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 35/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Run utlrp.sql, run catcon.pl to start utlrp.sql, and to recompile any remaining invalid objects
SQL> @/u01/app/oracle/product/19.3.0/db_home/rdbms/admin/utlrp.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 36/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Use the following queries to track recompilation progress. Query returning the number of invalid objects
remaining. This number should decrease with time
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 37/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 38/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Run postupgrade_fixups.sql
@/home/oracle/preupgrade/postupgrade_fixups.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 39/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 40/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
SQL>
@/u01/app/oracle/product/19.3.0/db_home/rdbms/admin/utltz_upg_check.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 41/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
SQL>
@/u01/app/oracle/product/19.3.0/db_home/rdbms/admin/utltz_upg_apply.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 42/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Run utlusts.sql
SQL> @/u01/app/oracle/product/19.3.0/db_home/rdbms/admin/utlusts.sql
TEXT
Run catuppst.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 44/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
SQL> @/u01/app/oracle/product/19.3.0/db_home/rdbms/admin/catuppst.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 45/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 46/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Re-Run postupgrade_fixups.sql
@/home/oracle/preupgrade/postupgrade_fixups.sql
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 47/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 48/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
SQL> startup;
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 49/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Verify DBA_REGISTRY
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 50/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
Edit oratab
vi /etc/oratab
Done!
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 51/52
3/1/22, 1:04 PM Oracle 12c to 19c Database Upgrade
https://www.support.dbagenesis.com/post/oracle-12c-to-19c-database-upgrade#viewer-b2cii 52/52