=====Overview===== First, there isn't a direct path from 10.2.0.5 to 12.2, we have to use intermediate version (either 11.2.0.4 or 12.1) In this procedure, we will use the 12.1 as intermediate version. Therefore, the upgrade will be divided into: * Upgrade to 12.1.0 * Upgrade to 12.2.0 Let's get going: =====Upgrade to 12.1.0===== To upgrade to 12.1 we have to, make backup, execute the pre-upgrade scripts/check, upgrade and then perform post-upgrade scripts. First perform a backup, that can be offline (if you are in noarchivelog mode) or online one (if you are in archivelog mode) ====Backup==== Connect to RMAN: rman "target / nocatalog" RUN { ALLOCATE CHANNEL chan_name TYPE DISK; BACKUP DATABASE FORMAT '%U' TAG before_upgrade; BACKUP CURRENT CONTROLFILE TO ''; } ====Pre-Upgrade Procedures==== After that copy the following scripts from the 12.1 home: - preupgrd.sql - utluppkg.sq And place them in location where the user of the 10.2.0.5 can read them. mfovs /cnoray15/syuora15/product/12.1.0> cd rdbms gmfovs /cnoray15/syuora15/product/10.2.0/rdbms> cd admin gmfovs /cnoray15/syuora15/product/10.2.0/rdbms/admin> sqlplus SQL*Plus: Release 10.2.0.5.0 - Production on Thu Nov 19 14:13:48 2020 Copyright (c) 1982, 2010, Oracle. All Rights Reserved. gmfovs /cnoray15/syuora15/product/10.2.0/rdbms/admin> sqlplus / as sysdba SQL*Plus: Release 10.2.0.5.0 - Production on Thu Nov 19 14:13:54 2020 Copyright (c) 1982, 2010, Oracle. All Rights Reserved. Connected to: Oracle Database 10g Release 10.2.0.5.0 - 64bit Production SQL> @preupgrd.sql Loading Pre-Upgrade Package... *************************************************************************** Executing Pre-Upgrade Checks in GMFOVS... *************************************************************************** ************************************************************ ====>> ERRORS FOUND for GMFOVS <<==== The following are *** ERROR LEVEL CONDITIONS *** that must be addressed prior to attempting your upgrade. Failure to do so will result in a failed upgrade. 1) Check Tag: COMPATIBLE_PARAMETER Check Summary: Verify compatible parameter value is valid Fixup Summary: Execute other Pre-Upgrade scripts: --Gather Stats SQL> EXECUTE dbms_stats.gather_dictionary_stats; SQL> --Verify which privileges are in the current CONNECT session SELECT GRANTEE,PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE ='CONNECT' --If anything else than "CREATE SESSION" is returned, verify is the user below are given these privileges through other role or grant them. SQL> SELECT grantee FROM dba_role_privs WHERE granted_role = 'CONNECT' and grantee NOT IN ( 'SYS', 'OUTLN', 'SYSTEM', 'CTXSYS', 'DBSNMP', 'LOGSTDBY_ADMINISTRATOR', 'ORDSYS', 'ORDPLUGINS', 'OEM_MONITOR', 'WKSYS', 'WKPROXY', 'WK_TEST', 'WKUSER', 'MDSYS', 'LBACSYS', 'DMSYS', 'WMSYS', 'EXFSYS', 'SYSMAN', 'MDDATA', 'SI_INFORMTN_SCHEMA', 'XDB', 'ODM'); --ACL functionality from 11g. You might need to create ACLs if the following query returns rows: SQL> SELECT * FROM DBA_DEPENDENCIES WHERE referenced_name IN ('UTL_TCP','UTL_SMTP','UTL_MAIL','UTL_HTTP','UTL_ INADDR','DBMS_LDAP') AND owner NOT IN ('SYS','PUBLIC','ORDPLUGINS'); --Check for DB Links: SQL> SELECT 'CREATE '||DECODE(U.NAME,'PUBLIC','public ')||'DATABASE LINK '||CHR(10) ||DECODE(U.NAME,'PUBLIC',Null, 'SYS','',U.NAME||'.')|| L.NAME||chr(10) ||'CONNECT TO ' || L.USERID || ' IDENTIFIED BY "'||L.PASSWORD||'" USING '''||L.HOST||'''' ||chr(10)||';' TEXT FROM SYS.LINK$ L, SYS.USER$ U WHERE L.OWNER# = U.USER#; --Check for materialized views SQL> select s.obj#,o.obj#,s.containerobj#,lastrefreshdate,pflags,xpflags,o.name,o.owner#, bitand(s.mflags, 8) from obj$ o, sum$ s where o.obj# = s.obj# and o.type# = 42 AND bitand(s.mflags, 8) = 8; --Check if you are in media recovery SQL> SELECT * FROM v$recover_file; --Check if you are in backup mode SQL> SELECT * FROM v$backup WHERE status != 'NOT ACTIVE'; --Check distuributed transactions SQL> SELECT * FROM dba_2pc_pending; ----If it returns rows, execute SQL> SELECT local_tran_id FROM dba_2pc_pending; SQL> EXECUTE dbms_transaction.purge_lost_db_entry(''); SQL> COMMIT; --Purge the recycle bin SQL> PURGE DBA_RECYCLEBIN --Check SYS and SYSTEM default tablespaces (should be SYSTEM) SQL> SELECT username, default_tablespace FROM dba_users WHERE username in ('SYS','SYSTEM'); ----If not system: SQL> ALTER user SYS default tablespace SYSTEM; SQL> ALTER user SYSTEM default tablespace SYSTEM; --Check if the database has external authentication SQL> SELECT name FROM sys.user$ WHERE ext_username IS NOT NULL AND password = 'GLOBAL'; --Remove EM Repo if present SQL> @ ?/rdbms/admin/emremove.sql --Prepare the move of AUD$ table from SYSTEM to SYS SQL> @ ?/rdbms/admin/olspreupgrade.sql --Check for hidden parameters SQL> SELECT name, value from SYS.V$PARAMETER WHERE name LIKE '\_%' ESCAPE '\' order by name; --Verify the Statistics method is: SQL> select DBMS_STATS.GET_PARAM('METHOD_OPT') from dual; FOR ALL COLUMNS SIZE AUTO <- AUTO SQL> ----Otherwise: SQL>exec DBMS_STATS.SET_PARAM('METHOD_OPT','FOR ALL COLUMNS SIZE AUTO'); (e.g. Unpublished BUG 22454765 - CARRYING METHOD_OPT = "FOR COLUMNS ID SIZE 1" FROM 10G WILL BREAK UPGRADE) ====Upgrade==== To upgrade we will stop: - Stop the Listener & Database - Copy the Pfile / password file & Listener.ora file - Modify the pfile (with the new compatibility parameter) - Modify the ORACLE_HOME, ORACLE_BASE and PATH, LD_LIBRARY_PATH and SHLIB_PATH to point to the new location - Start the database in Upgrade Mode - Perform the upgrade So let's get going: gmfovs /cnoray15/syuora15/product/10.2.0/rdbms/admin> lsnrctl stop lsnr_gmfovs LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production on 19-NOV-2020 14:41:26 Copyright (c) 1991, 2010, Oracle. All rights reserved. Connecting to (ADDRESS=(PROTOCOL=TCP)(Host=***************)(Port=1527)) The command completed successfully gmfovs /cnoray15/syuora15/product/10.2.0/rdbms/admin> sqlplus / as sysdba SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. Modify the settings: * ORACLE_HOME * ORACLE_BASE * LD_LIBRARY * LIB To point to the new environment and copy the pfile to the new home (12.1) cnoray12 /cnoray12/syuora12/product/12.1.0/rdbms/admin> sqlplus / as sysdba SQL> startup upgrade SQL> Exit cnoray12 /cnoray12/syuora12/product/12.1.0/rdbms/admin> $ORACLE_HOME/perl/bin/perl catctl.pl -n 6 -l /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12 catupgrd.sql Argument list for [catctl.pl] SQL Process Count n = 6 SQL PDB Process Count N = 0 Input Directory d = 0 Phase Logging Table t = 0 Log Dir l = /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12 Script s = 0 Serial Run S = 0 Upgrade Mode active M = 0 Start Phase p = 0 End Phase P = 0 Log Id i = 0 Run in c = 0 Do not run in C = 0 Echo OFF e = 1 No Post Upgrade x = 0 Reverse Order r = 0 Open Mode Normal o = 0 Debug catcon.pm z = 0 Debug catctl.pl Z = 0 Display Phases y = 0 Child Process I = 0 catctl.pl version: 12.1.0.2.0 Oracle Base = /cnoray12/syuora12/product/12.1.0/OraBase Analyzing file catupgrd.sql Log files in /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12 catcon: ALL catcon-related output will be written to /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12/catupgrd_catcon_26476628.lst catcon: See /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12/catupgrd*.log files for output generated by scripts catcon: See /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12/catupgrd_*.lst files for spool files, if any Number of Cpus = 8 SQL Process Count = 6 ------------------------------------------------------ ------------------------------------------------------ Phases [0-73] Serial Phase #: 0 Files: 1 Time: 804s Serial Phase #: 1 Files: 5 Time: 79s Restart Phase #: 2 Files: 1 Time: 0s Parallel Phase #: 3 Files: 18 Time: 18s Restart Phase #: 4 Files: 1 Time: 1s Serial Phase #: 5 Files: 5 Time: 39s Serial Phase #: 6 Files: 1 Time: 29s Serial Phase #: 7 Files: 4 Time: 26s Restart Phase #: 8 Files: 1 Time: 1s Parallel Phase #: 9 Files: 62 Time: 72s Restart Phase #:10 Files: 1 Time: 1s Serial Phase #:11 Files: 1 Time: 1357s Restart Phase #:12 Files: 1 Time: 1s Parallel Phase #:13 Files: 91 Time: 16s Restart Phase #:14 Files: 1 Time: 1s Parallel Phase #:15 Files: 111 Time: 32s Restart Phase #:16 Files: 1 Time: 1s Serial Phase #:17 Files: 3 Time: 2s Restart Phase #:18 Files: 1 Time: 1s Parallel Phase #:19 Files: 32 Time: 28s Restart Phase #:20 Files: 1 Time: 1s Serial Phase #:21 Files: 3 Time: 13s Restart Phase #:22 Files: 1 Time: 1s Parallel Phase #:23 Files: 23 Time: 96s Restart Phase #:24 Files: 1 Time: 1s Parallel Phase #:25 Files: 11 Time: 40s Restart Phase #:26 Files: 1 Time: 1s Serial Phase #:27 Files: 1 Time: 1s Restart Phase #:28 Files: 1 Time: 0s Serial Phase #:30 Files: 1 Time: 0s Serial Phase #:31 Files: 257 Time: 45s Serial Phase #:32 Files: 1 Time: 0s Restart Phase #:33 Files: 1 Time: 1s Serial Phase #:34 Files: 1 Time: 5s Restart Phase #:35 Files: 1 Time: 1s Restart Phase #:36 Files: 1 Time: 1s Serial Phase #:37 Files: 4 Time: 81s Restart Phase #:38 Files: 1 Time: 1s Parallel Phase #:39 Files: 13 Time: 56s Restart Phase #:40 Files: 1 Time: 1s Parallel Phase #:41 Files: 10 Time: 11s Restart Phase #:42 Files: 1 Time: 1s Serial Phase #:43 Files: 1 Time: 11s Restart Phase #:44 Files: 1 Time: 1s Serial Phase #:45 Files: 1 Time: 84s Serial Phase #:46 Files: 1 Time: 0s Restart Phase #:47 Files: 1 Time: 1s Serial Phase #:48 Files: 1 Time: 650s Restart Phase #:49 Files: 1 Time: 0s Serial Phase #:50 Files: 1 Time: 122s Restart Phase #:51 Files: 1 Time: 0s Serial Phase #:52 Files: 1 Time: 1s Restart Phase #:53 Files: 1 Time: 1s Serial Phase #:54 Files: 1 Time: 285s Restart Phase #:55 Files: 1 Time: 0s Serial Phase #:56 Files: 1 Time: 74s Restart Phase #:57 Files: 1 Time: 0s Serial Phase #:58 Files: 1 Time: 615s Restart Phase #:59 Files: 1 Time: 1s Serial Phase #:60 Files: 1 Time: 1s Restart Phase #:61 Files: 1 Time: 0s Serial Phase #:62 Files: 1 Time: 19s Restart Phase #:63 Files: 1 Time: 1s Serial Phase #:64 Files: 1 Time: 2s Serial Phase #:65 Files: 1 Calling sqlpatch with LD_LIBRARY_PATH=/cnoray12/syuora12/product/12.1.0/lib; export LD_LIBRARY_PATH; LIBPATH=/cnoray12/syuora12/product/12.1.0/lib; export LIBPATH; LD_LIBRARY_PATH_64=/cnoray12/syuora12/product/12.1.0/lib; export LD_LIBRARY_PATH_64; DYLD_LIBRARY_PATH=/cnoray12/syuora12/product/12.1.0/lib; export DYLD_LIBRARY_PATH; /cnoray12/syuora12/product/12.1.0/perl/bin/perl -I /cnoray12/syuora12/product/12.1.0/rdbms/admin -I /cnoray12/syuora12/product/12.1.0/rdbms/admin/../../sqlpatch /cnoray12/syuora12/product/12.1.0/rdbms/admin/../../sqlpatch/sqlpatch.pl -verbose -upgrade_mode_only > /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12/catupgrd_datapatch_upgrade.log 2> /cnoray12/syuora12/diag/upgrade/upgrade121/cnoray12/catupgrd_datapatch_upgrade.err returned from sqlpatch Time: 48s Serial Phase #:66 Files: 1 Time: 41s Serial Phase #:67 Files: 1 Time: 1s Serial Phase #:68 Files: 1 Time: 0s Serial Phase #:69 Files: 1 Time: 23s Grand Total Time: 4853s Now, we have issues with WKSYS user *Workspace Manager) which we have to fix: (support node: 2528241.1) ===Fix Workspace Manager=== Verify that we have problem using the following query: SQL> select sys.dbms_registry.count_errors_in_registry('OWM') from dual; SYS.DBMS_REGISTRY.COUNT_ERRORS_IN_REGISTRY('OWM') ------------------------------------------------- 3 SQL> SELECT distinct(substr(to_char(message),1,60)) OWM_Upgrade_Errors FROM sys.registry$error WHERE substr(to_char(message),1,9) != 'ORA-00001' AND trim(identifier) = 'OWM'; 2 3 4 OWM_UPGRADE_ERRORS ------------------------------------------------------------ ORA-06512: at "WMSYS.OWM_VSCRIPT_PKG", line 3544 ORA-06512: ORA-06512: at "WMSYS.OWM_VSCRIPT_PKG", line 3730 ORA-06512: ORA-06512: at line 2 ORA-20001: Errors encountered during table migration. Query wmsys.wm$migration_error_table. ORA-06512: at "WMSYS.OWM_VSC Most probably, we have missing permissions, let's check: SQL> select substrb(owner,1,10)owner, substrb(table_name,1,20)table_name, substrb(grantee,1,12)grantee, substrb(privilege,1,10)privilege from dba_tab_privs where table_name = 'NOEXP$' 2 3 ; OWNER TABLE_NAME GRANTEE PRIVILEGE ---------- -------------------- ------------ ---------- SYS NOEXP$ WMSYS DELETE SYS NOEXP$ WMSYS INSERT SQL> --Grant the rights SQL> grant insert on SYS.NOEXP$ to WMSYS; grant delete on SYS.NOEXP$ to WMSYS; Grant succeeded. SQL> Grant succeeded. --Compile the package again and clear the errors SQL> alter package WMSYS.LTUTIL compile; Package altered. SQL> DELETE FROM sys.registry$error WHERE trim(identifier) = 'OWM'; 5 rows deleted. SQL> SELECT count(*) Err_count FROM sys.registry$error WHERE trim(identifier) = 'OWM'; ERR_COUNT ---------- 0 SQL> exec VALIDATE_OWM; PL/SQL procedure successfully completed. SQL> ====Post-Upgrade==== Execute Post Upgrade scripts: SQL> @utlu121s.sql PL/SQL procedure successfully completed. PL/SQL procedure successfully completed. CATCTL REPORT = /cnoray12/syuora12/product/12.1.0/cfgtoollogs/cnoray12/upgrade/upg_summary.log PL/SQL procedure successfully completed. Oracle Database 12.1 Post-Upgrade Status Tool 11-19-2020 19:17:22 Component Current Version Elapsed Time Name Status Number HH:MM:SS Oracle Server UPGRADED 12.1.0.2.0 00:49:20 JServer JAVA Virtual Machine VALID 12.1.0.2.0 00:10:49 Oracle Workspace Manager VALID 12.1.0.2.0 00:00:54 OLAP Analytic Workspace OPTION OFF 9.2.0.8.0 00:00:00 Oracle OLAP API OPTION OFF 9.2.0.8.0 00:00:00 Oracle XDK VALID 12.1.0.2.0 00:02:00 Oracle Text VALID 12.1.0.2.0 00:01:17 Oracle XML Database VALID 12.1.0.2.0 00:03:26 Oracle Database Java Packages VALID 12.1.0.2.0 00:00:18 Oracle Multimedia VALID 12.1.0.2.0 00:10:13 Spatial OPTION OFF 9.2.0.8.0 00:00:00 Final Actions 00:01:26 Total Upgrade Time: 01:20:18 PL/SQL procedure successfully completed. SQL> SQL> -- SQL> -- Update Summary Table with con_name and endtime. SQL> -- SQL> UPDATE sys.registry$upg_summary SET reportname = :ReportName, 2 con_name = SYS_CONTEXT('USERENV','CON_NAME'), 3 endtime = SYSDATE 4 WHERE con_id = -1; 1 row updated. SQL> commit; Commit complete. SQL> SQL> SQL> SQL> SQL> --Run Postupgrade.sql SQL> @/cnoray12/syuora12/product/10.2.0/OraBase/cfgtoollogs/cnoray12/preupgrade/postupgrade_fixups.sql Post Upgrade Fixup Script Generated on 2020-11-19 17:13:31 Version: 12.1.0.2 Build: 006 Beginning Post-Upgrade Fixups... ********************************************************************** Check Tag: INVALID_OBJECTS_EXIST Check Summary: Check for invalid objects Fix Summary: Invalid objects are displayed and must be reviewed. ********************************************************************** Fixup Returned Information: WARNING: --> Database contains INVALID objects prior to upgrade The list of invalid SYS/SYSTEM objects was written to registry$sys_inv_objs. The list of non-SYS/SYSTEM objects was written to registry$nonsys_inv_objs unless there were over 5000. Use utluiobj.sql after the upgrade to identify any new invalid objects due to the upgrade. *********************************************************** SQL> @catuppst.sql Session altered. Session altered. Session altered. Session altered. TIMESTAMP -------------------------------------------------------------------------------- COMP_TIMESTAMP POSTUP_BGN 2020-11-19 19:26:42 TIMESTAMP -------------------------------------------------------------------------------- COMP_TIMESTAMP CATREQ_BGN 2020-11-19 19:26:42 PL/SQL procedure successfully completed. catrequtlmg: b_StatEvt = TRUE catrequtlmg: b_SelProps = FALSE catrequtlmg: b_UpgradeMode = FALSE catrequtlmg: b_InUtlMig = FALSE PL/SQL procedure successfully completed. PL/SQL procedure successfully completed. TIMESTAMP -------------------------------------------------------------------------------- COMP_TIMESTAMP CATREQ_END 2020-11-19 19:26:42 SQL> @utlrp.sql TIMESTAMP -------------------------------------------------------------------------------- COMP_TIMESTAMP UTLRP_BGN 2020-11-19 19:26:54 DOC> The following PL/SQL block invokes UTL_RECOMP to recompile invalid DOC> objects in the database. Recompilation time is proportional to the DOC> number of invalid objects in the database, so this command may take DOC> a long time to execute on a database with a large number of invalid DOC> objects. DOC> DOC> Use the following queries to track recompilation progress: DOC> DOC> 1. Query returning the number of invalid objects remaining. This DOC> number should decrease with time. DOC> SELECT COUNT(*) FROM obj$ WHERE status IN (4, 5, 6); DOC> DOC> 2. Query returning the number of objects compiled so far. This number DOC> should increase with time. DOC> SELECT COUNT(*) FROM UTL_RECOMP_COMPILED; DOC> DOC> This script automatically chooses serial or parallel recompilation DOC> based on the number of CPUs available (parameter cpu_count) multiplied DOC> by the number of threads per CPU (parameter parallel_threads_per_cpu). DOC> On RAC, this number is added across all RAC nodes. DOC> DOC> UTL_RECOMP uses DBMS_SCHEDULER to create jobs for parallel DOC> recompilation. Jobs are created without instance affinity so that they DOC> can migrate across RAC nodes. Use the following queries to verify DOC> whether UTL_RECOMP jobs are being created and run correctly: DOC> DOC> 1. Query showing jobs created by UTL_RECOMP DOC> SELECT job_name FROM dba_scheduler_jobs DOC> WHERE job_name like 'UTL_RECOMP_SLAVE_%'; DOC> DOC> 2. Query showing UTL_RECOMP jobs that are running =====Upgrade to 12.2===== Again, we have to execute couple (not that many) pre-upgrade checks & Scripts, upgrade and perform post-upgrade checks & scripts, but before we start assure you have a backup: ====Verify Backup==== Recovery Manager: Release 12.1.0.2.0 - Production on Thu Nov 19 20:05:28 2020 Copyright (c) 1982, 2015, Oracle and/or its affiliates. All rights reserved. connected to target database: CNORAY12 (DBID=1085631759) using target database control file instead of recovery catalog RMAN> #resync catalog; 2> run { 3> sql 'alter system archive log current'; 4> # 5> # Backup Full database 6> # 7> allocate channel ch1 type 'SBT_TAPE' PARMS 'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo_syuora12.opt)'; 8> #allocate channel ch2 t Starting backup at 19-nov-2020 20:05:35 channel ch1: starting full datafile backup set channel ch1: specifying datafile(s) in backup set including current control file in backup set input datafile file number=00008 name=/cnoray12/syuora12/oradata/tools01.dbf input datafile file number=00002 name=/cnoray12/syuora12/oradata/undotbs01.dbf input datafile file number=00011 name=/cnoray12/syuora12/oradata/mfdata01.dbf input datafile file number=00001 name=/cnoray12/syuora12/oradata/system01.dbf input datafile file number=00009 name=/cnoray12/syuora12/oradata/users01.dbf input datafile file number=00013 name=/cnoray12/syuora12/oradata/sysaux01.dbf input datafile file number=00012 name=/cnoray12/syuora12/oradata/tivoliorts.dbf input datafile file number=00005 name=/cnoray12/syuora12/oradata/example01.dbf input datafile file number=00010 name=/cnoray12/syuora12/oradata/xdb01.dbf input datafile file number=00006 name=/cnoray12/syuora12/oradata/indx01.dbf input datafile file number=00003 name=/cnoray12/syuora12/oradata/cwmlite01.dbf input datafile file number=00004 name=/cnoray12/syuora12/oradata/drsys01.dbf input datafile file number=00007 name=/cnoray12/syuora12/oradata/odm01.dbf channel ch1: starting piece 1 at 19-nov-2020 20:05:39 channel ch1: finished piece 1 at 19-nov-2020 20:10:04 piece handle=cnoray12_ONLINE_CNORAY12_t1056917136_s104847_p1 tag=CNORAY12 FULL_ONLINE_BACKUP comment=API Version 2.0,MMS Version 5.3.3.0 channel ch1: backup set complete, elapsed time: 00:04:25 Finished backup at 19-nov-2020 20:10:04 Starting backup at 19-nov-2020 20:10:05 channel ch1: starting full datafile backup set channel ch1: specifying datafile(s) in backup set including current control file in backup set channel ch1: starting piece 1 at 19-nov-2020 20:10:06 channel ch1: finished piece 1 at 19-nov-2020 20:10:07 piece handle=cnoray12_CTRL_CNORAY12_t1056917405_s104848_p1 tag=CNORAY12 CONTROLFILE BACKUP comment=API Version 2.0,MMS Version 5.3.3.0 channel ch1: backup set complete, elapsed time: 00:00:01 Finished backup at 19-nov-2020 20:10:07 Starting Control File Autobackup at 19-nov-2020 20:10:07 piece handle=c-1085631759-20201119-14 comment=API Version 2.0,MMS Version 5.3.3.0 Finished Control File Autobackup at 19-nov-2020 20:10:08 ===Pre-upgrade Checks=== --Audit table preupgrade requirements SQL> @olspreupgrade.sql Session altered. Function created. No errors. Function created. No errors. Function created. --Ensure we are not in backup mode and that the Recycle bin is purged SQL> SELECT * FROM v$backup WHERE status != 'NOT ACTIVE'; SQL> PURGE DBA_RECYCLEBIN; SQL> --remove unified audit user SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup; ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance ORACLE instance started. Total System Global Area 918552576 bytes Fixed Size 3004272 bytes Variable Size 696256656 bytes Database Buffers 209715200 bytes Redo Buffers 9576448 bytes Database mounted. Database opened. --Gather Statistics SQL> EXEC DBMS_STATS.GATHER_DICTIONARY_STATS; SQL> PL/SQL procedure successfully completed. SQL> SQL>