Thursday, February 13, 2020
Manual Upgrade 11gR2(11.2.0.4 only) or 12c database to 18c
*******************
Start database in upgrade Mode
*******************
startup upgrade
***************************
Run below script to upgrade
***************************
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catctl.pl -d $ORACLE_HOME/rdbms/admin -l /home/oracle/ -n 4 catupgrd.sql
***************************
Run below script to check upgrade status
**************************
cd $ORACLE_HOME/rdbms/admin
SQL> @utlu122s.sql
*************************
Run below Script
*************************
SQL> @catuppst.sql
**************************
Execute utlrp.sql script to compile invalid objects.
**************************
SQL> @utlrp.sql
**************************
Count No. of Invalid Objects
**************************
SQL> select count(*) from dba_objects where status='INVALID';
***************************
Set Compatible Parameter
***************************
SQL> show parameter compatible;
****************************
Change Compatible parameter
****************************
SQL> ALTER SYSTEM SET COMPATIBLE = '18.0.0' SCOPE=SPFILE;
****************************
Restart Database in Normal Mode
****************************
SQL> shut immediate;
SQL> startup;
****************************
Gather Fixed Objects Stats
****************************
SQL> EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
*******************************************************
Shutdown Down Database and start again in upgrade Mode
*******************************************************
SQL> shutdown immediate;
SQL> startup upgrade
**************************************
START UPGRADE WINDOW WITH BELOW SCRIPT
**************************************
SET SERVEROUTPUT ON
DECLARE
l_tz_version PLS_INTEGER;
BEGIN
l_tz_version := DBMS_DST.get_latest_timezone_version;
DBMS_OUTPUT.put_line('l_tz_version=' || l_tz_version);
DBMS_DST.begin_upgrade(l_tz_version);
END;
/
**************************************
Shutdown database and Start in Normal mode
****************************************
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
***************************
Upgrade Timezone version :
***************************
SET SERVEROUTPUT ON
DECLARE
l_failures PLS_INTEGER;
BEGIN
DBMS_DST.upgrade_database(l_failures);
DBMS_OUTPUT.put_line('DBMS_DST.upgrade_database : l_failures=' || l_failures);
DBMS_DST.end_upgrade(l_failures);
DBMS_OUTPUT.put_line('DBMS_DST.end_upgrade : l_failures=' || l_failures);
END;
/
*****************************
Check Timezone File
*****************************
SQL> SELECT * FROM v$timezone_file;
FILENAME VERSION CON_ID
-------------------- ---------- -------
timezlrg_31.dat 31 0
SQL> select TZ_VERSION from registry$database;
TZ_VERSION
----------
18
********************************
Upgrade registery$database
********************************
SQL> update registry$database set TZ_VERSION = (select version FROM v$timezone_file);
SQL> commit;
SQL> select TZ_VERSION from registry$database;
********************************
Check database version and status
********************************
SQL> select name,version,open_mode from v$database,v$instance;
No comments:
Post a Comment