Few days ago Oracle announced another OCI feature. You can now upgrade Exadata Cloud Service databases to Oracle Database version 19c through the console or API. It's great to see the availability of these new features, as simple as they are it's what makes the cloud more feasible and mature. With 19c being the current long term release and premier support till April 2024 (extended support ends April 2027) that's an excellent feature to have at the reach of a mouse button. The 19c version is the terminal release of the 12.2 family and it's very likely to become the new 11.2.0.4. This release has proven to be one of the most popular and stable versions, its premier support ended five years ago but we still have many customer running it.

To reiterate, if you plan an upgrade to a new release at the moment, this should be 19c. If you run 12.1, 12.2 or 18c you should plan to upgrade to 19c soon if you don't want to pay extended fees or be supported at all. Note 742060.1 is your friend:

Release Schedule of Current Database Releases (Doc ID 742060.1)

Back to the 19c upgrade, there is nothing complex in this upgrade but the devil is in the details. To be able to use this feature there are number of prerequisites:

  • This upgrade feature is only available for the the new Exadata Cloud Service Resource Model. If your Exadata Cloud Service X8M then you are already using the new resource model, if not consider switching your Exadata Cloud service to the new resource model (blog post to follow)
  • The Exadata Cloud Service system must be running OEL 7 i.e. you must be running Exadata System Software release 19.x
  • The Grid Infrastructure version must be 19c
  • The must be Oracle Database home provisioned on the system using one of the latest two releases. At the time of writing this post, 19c homes on X8M are provisioned under 19.8 and the latest available version is 19.9
  • The upgraded database must be in archivelog mode and having flashback enabled. Unless you have explicitly disabled these features they are turned on by default when you create a database using the cloud console.

Here are my software versions for reference:

  • Exadata Cloud Service X8M + 2 compute nodes + 2 storage servers
  • Exadata System Software version 20.1.2.0.0.200930
  • Grid Infrastructure version 19.9.0.0.201020
  • Oracle Database 12c version 12.2.0.1.201020
  • Oracle Home version 19.8.0.0.200714

Before upgrading a database it's recommended to run the prechecks and make sure your database is ready for an upgrade. The precheck is very quick, non intrusive and it only takes few minutes to complete. Also, make sure you take a full backup before running the upgrade.

I did the upgrade of my 12.2 test database and it completed successfully! For an empty 4GB database it took 1hr 40 minutes to complete.

Further to that I decided to apply latest available patch 19.9 on my newly upgraded database. Similarly with the upgrade to 19c the precheck takes 10 minutes to complete. Then to apply the patch it takes another 30 minutes. I could have upgraded database home to 19.9 prior the database upgrade but decided to give it a try. Here are the timings for an empty 12.2 database upgrade to 19.8 and patch to 19.9:

Reference to the documentation:

Upgrading Exadata Databases
Learn how to perform Exadata database upgrades by using the Console, API, or CLI.