Forum Stats

  • 3,854,659 Users
  • 2,264,395 Discussions
  • 7,905,748 Comments

Discussions

Upgrade RAC 12c to 19c using manual method.

user10285
user10285 Member Posts: 1 Blue Ribbon
edited Sep 8, 2020 5:04AM in Database Upgrade

Hi All,

Planning to upgrade 12c (two node)  RAC database to 19c (two node) RAC through manual approach, here are the high level steps planned,

NAME="Oracle Linux Server"

VERSION="7.7"

Oracle version 19.7

Please let me know if there are any changes required.

1.srvctl config database -d <DBNAME>

2./u01/app/oracle/product/19.7/jdk/bin/java -jar /u01/app/oracle/product/19.7/rdbms/admin/preupgrade.jar TERMINAL TEXT

3.@/u01/app/oracle/products/preupgrade/preupgrade_fixups.sql

4.Take a cold backup

5.Copy/move files from old $OH/dbs to new $OH/dbs

6.Edit /etc/oratab to use new Oracle Home

7.Set environment again to use new Oracle Home

8.start it as single instance,

startup nomount

alter system set cluster_database=false scope=spfile;

ALTER SYSTEM SET COMPATIBLE = '19.0.0' SCOPE=SPFILE;

shutdown immediate;

9.startup upgrade;

10.cd /u01/app/oracle/product/19.7/bin/dbupgrade

11.Post upgrade steps.

12.alter system set cluster_database=true scope=spfile;

Shutdown immediate;

13.srvctl upgrade database -d <DBNAME> -o /u01/app/oracle/product/19.7

srvctl config database -d <DBNAME>

srvctl start database -d <DBNAME>

srvctl status database -d <DBNAME>

Thanks!

user10285

Answers

  • Arsalan Dehghanisariyarghan
    Arsalan Dehghanisariyarghan Member Posts: 367 Bronze Trophy
    edited Aug 28, 2020 3:50AM
    user10285 wrote:Hi All,Planning to upgrade 12c (two node) RAC database to 19c (two node) RAC through manual approach, here are the high level steps planned, NAME="Oracle Linux Server"VERSION="7.7"Oracle version 19.7Please let me know if there are any changes required.1.srvctl config database -d <DBNAME>2./u01/app/oracle/product/19.7/jdk/bin/java -jar /u01/app/oracle/product/19.7/rdbms/admin/preupgrade.jar TERMINAL TEXT3.@/u01/app/oracle/products/preupgrade/preupgrade_fixups.sql4.Take a cold backup5.Copy/move files from old $OH/dbs to new $OH/dbs6.Edit /etc/oratab to use new Oracle Home7.Set environment again to use new Oracle Home8.start it as single instance, startup nomountalter system set cluster_database=false scope=spfile;ALTER SYSTEM SET COMPATIBLE = '19.0.0' SCOPE=SPFILE; shutdown immediate;9.startup upgrade;10.cd /u01/app/oracle/product/19.7/bin/dbupgrade11.Post upgrade steps.12.alter system set cluster_database=true scope=spfile;Shutdown immediate;13.srvctl upgrade database -d <DBNAME> -o /u01/app/oracle/product/19.7srvctl config database -d <DBNAME>srvctl start database -d <DBNAME>srvctl status database -d <DBNAME>Thanks!

    Hi,

    I suggest adding items written in red for the pre-upgrade phase.

    -Gather DICTIONARY STATS

    -Purge Recyclebin

    3.@/u01/app/oracle/products/preupgrade/preupgrade_fixups.sql

    4.Take a cold backup

    - Verify archive log dest size

    - Stop LISTENER

    - Create Flashback Guaranteed Restore Point

    Also, the MOS docs below can be useful to you:

    Oracle 19c - Complete Checklist for Upgrading to Oracle Database 19c (19.x) using DBUA (Doc ID 2545064.1)

    How to Upgrade to/Downgrade from Grid Infrastructure 19c and Known Issues (Doc ID 2669766.1)

    HTH

    Cheers,

    Arsalan

    user10285
  • Wesley D-Oracle
    Wesley D-Oracle Posts: 193 Employee
    edited Aug 28, 2020 10:57AM

    I would say the steps look good, as the preupgrade_fixups.sql should also purge the recyclebin and gather stats.

    Good call from @Arsalan Dehghanisariyarghan with Flashback GRP, much faster to get back to pre-upgrade state in the event of an issue during upgrade.

    One thing I would suggest is do not change COMPATIBLE parameter to 19.0.0 until after the upgrade is complete and you're satisfied with the results.  Once the COMPATIBLE parameter is set to 19.0.0, there is no longer the possibility to "downgrade" the DB if needed/desired.

    user10285