Manual Upgrades to Oracle Database 12c Release 1 (12.1.0.2)

This article will provide you howto upgrade manual from Oracle 11gR2 to ORACLE Database 12c Release 1.

Step 1: Backup database

Backup the database or create the restorepoint before starting the upgrade process. In the event of a failure, we can restore the database to the starting point.
rman "target / nocatalog"
RUN
{
ALLOCATE CHANNEL chan_name TYPE DISK;
BACKUP DATABASE FORMAT '/tmp/backup/DBTEST_%U' TAG before_upgrade;
BACKUP CURRENT CONTROLFILE FORMAT '/tmp/backup/controlfile';
}

Step 2: Run the Pre-Upgrade Information Tool

Copy the Pre-Upgrade Information Tool script preupgrd.sql and utluppkg.sql from the Oracle Database 12c Release 1 (12.1) $ORACLE_HOME/rdbms/admin directory  to /tmp/upgrade

Connect to the database instance using sqlplus as a user with SYSDBA privileges. Please make sure that the database should be started using the Source Oracle Home 11gR2 . Then run preupgrd.sql

$ sqlplus '/ as sysdba'
SQL> @/tmp/upgrade/preupgrd.sql

Loading Pre-Upgrade Package...


***************************************************************************
Executing Pre-Upgrade Checks in DBTEST...
***************************************************************************


      ************************************************************

                  ====>> ERRORS FOUND for DBTEST <<====

 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.

           You MUST resolve the above errors prior to upgrade

      ************************************************************

      ************************************************************

              ====>> PRE-UPGRADE RESULTS for DBTEST <<====

ACTIONS REQUIRED:

1. Review results of the pre-upgrade checks:
 /opt/oracle/base/cfgtoollogs/DBTEST/preupgrade/preupgrade.log

2. Execute in the SOURCE environment BEFORE upgrade:
 /opt/oracle/base/cfgtoollogs/DBTEST/preupgrade/preupgrade_fixups.sql

3. Execute in the NEW environment AFTER upgrade:
 /opt/oracle/base/cfgtoollogs/DBTEST/preupgrade/postupgrade_fixups.sql

      ************************************************************

***************************************************************************
Pre-Upgrade Checks in DBTEST Completed.
***************************************************************************

***************************************************************************
***************************************************************************

Step3: Pre upgrade Steps

A fixup script preupgrade_fixups.sql that should be run before the upgrade .

SQL> @/opt/oracle/base/cfgtoollogs/DBTEST/preupgrade/preupgrade_fixups.sql
Pre-Upgrade Fixup Script Generated on 2014-09-02 10:18:09  Version: 12.1.0.2 Build: 006
Beginning Pre-Upgrade Fixups...
Executing in container DBTEST

**********************************************************************
Check Tag:     DEFAULT_PROCESS_COUNT
Check Summary: Verify min process count is not too low
Fix Summary:   Review and increase if needed, your PROCESSES value.
**********************************************************************
Fixup Returned Information:
WARNING: --> Process Count may be too low

     Database has a maximum process count of 150 which is lower than the
     default value of 300 for this release.
     You should update your processes value prior to the upgrade
     to a value of at least 300.
     For example:
        ALTER SYSTEM SET PROCESSES=300 SCOPE=SPFILE
     or update your init.ora file.
**********************************************************************


**********************************************************************
                      [Pre-Upgrade Recommendations]
**********************************************************************

                        *****************************************
                        ********* Dictionary Statistics *********
                        *****************************************

Please gather dictionary statistics 24 hours prior to
upgrading the database.
To gather dictionary statistics execute the following command
while connected as SYSDBA:
    EXECUTE dbms_stats.gather_dictionary_stats;

^^^ MANUAL ACTION SUGGESTED ^^^


           **************************************************
                ************* Fixup Summary ************

 1 fixup routine generated an INFORMATIONAL message that should be reviewed.

**************** Pre-Upgrade Fixup Script Complete *********************
The script suggested that i should increase the PROCESSES and gather statistics.

Step3.
After completing the Pre-Upgrade suggestion, we will shutdown the database.

  • Copy the parameter and password files from the old home 11gR2 to the 12c home.
cp /opt/oracle/11.2.0.4/dbs/initDBTEST.ora /opt/oracle/12.1.0.2/dbs/
cp /opt/oracle/11.2.0.4/dbs/orapwDBTEST /opt/oracle/12.1.0.2/dbs/

  • Edit the oratab file, setting the new ORACLE HOME value.
DBTEST:/opt/oracle/12.1.0.2:N
  • Edit the parameter files and change COMPATIBLE to 12.0.0 if you are using an initialization parameter file
*.compatible='12.0.0'
         or execute the statement.
SQL> ALTER SYSTEM SET COMPATIBLE = '12.0.0' SCOPE=SPFILE;

Step4 . Upgrading Database to 12cR1

Start the database in upgrade mode. Make sure that the database will start using Oracle Home 12c.
$ sqlplus / as sysdba
SQL> STARTUP UPGRADE;
SQL> EXIT;

Run the catctl.pl script from the new Oracle home.
cd $ORACLE_HOME/rdbms/admin
$ORACLE_HOME/perl/bin/perl catctl.pl -n 2 -l $ORACLE_HOME/diagnostics catupgrd.sql

It tooks time to do a upgrade.
Run the Post-Upgrade Status Tool utlu121s.sql , which is located at $ORACLE_HOME/rdbms/admin/which provides a summary of the upgrade

SQL> @utlu121s.sql

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

CATCTL REPORT = /opt/oracle/12.1.0.2/cfgtoollogs/DBTEST/upgrade/upg_summary.log

PL/SQL procedure successfully completed.

Oracle Database 12.1 Post-Upgrade Status Tool           09-02-2014 12:24:21

Component                               Current         Version  Elapsed Time
Name                                    Status          Number   HH:MM:SS

Oracle Server                          UPGRADED      12.1.0.2.0  00:26:12
Oracle Workspace Manager                  VALID      12.1.0.2.0  00:01:21
Oracle Text                               VALID      12.1.0.2.0  00:01:49
Oracle XML Database                       VALID      12.1.0.2.0  00:02:00
Final Actions                                                    00:02:20
Post Upgrade                                                     00:02:56

Total Upgrade Time: 00:36:49

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.

The catuppst.sql script is run as part of the upgrade process unless the upgrade returns errors during the process . Since we have any errors, we can run it manually.
SQL>@$ORACLE_HOME/rdbms/admin/catuppst.sql

Step5. Post Upgrade Steps
Run the postupgrade_fixups.sql after upgrade.
SQL>@/opt/oracle/base/cfgtoollogs/DBTEST/preupgrade/postupgrade_fixups.sql

Step6. Verify the database.

#sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Tue Sep 2 16:12:39 2014

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Advanced Analytics
and Real Application Testing options

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE
Previous
Next Post »
Thanks for your comment