Skip to Main Content
  • Questions
  • copy database 11g to 12c home leaving untouched the source database

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Constantinos.

Asked: January 14, 2020 - 9:20 am UTC

Last updated: January 17, 2020 - 1:08 am UTC

Version: 11.2.0.4

Viewed 1000+ times

You Asked

Hi,

We have a production (24x7) database relying on Solaris host server1 and I am trying to make a copy (via backup - restore) into 12c home on different Solaris host (server2).

The source database is version 11.2.0.4 and the target database will be version 12.2.0.1.
As per release 11g notes I notice pre-upgrade script is mandatory on source database which recommends among others to remove EM.

Because the source is a production database must remain untouched.

How can I implement this ?
Do I have to apply all recommendations on source (production) db? Can I open somehow the target db and apply the pre-upgrade recommendations before open upgrade?

What if I avoid pre-upgrade scripts recommendations?


Thanks in advance...


and Connor said...

I spoke to Roy Swonger who heads up Upgrade within Oracle. Here's his reponse

1. Do not upgrade a database to 12.2.0.1 ! 12.2.0.1 goes out of support in ten months! You should be upgrading to 19c. Please refer to Release Schedule of Current Database Releases (Doc ID 742060.1) for details on support lifecycles.

2. Regarding the preupgrade script

a. Always download the latest version here: How to Download and Run Oracle's Database Pre-Upgrade Utility (Doc ID 884522.1)
b. The preupgrade script does not make changes to the source database
c. The recommendations from the preupgrade script can often be implemented in the target environment (e.g. parameter changes) but in other cases would have to be performed in the source environment (e.g. moving audit records from SYSTEM.AUD$ to SYS.AUD$ while the database is up, in order to save the downtime of doing this during the upgrade). It really depends on the database being upgraded; some databases will have no recommendations, others will have conditions such as tablespaces that need to be extended.
d. Preupgrade recommendations can be informational, recommendation, warning or error conditions:

i. Informational: you don't have to read or act on these if you don't want to, but we aren't producing these just because we like to generate output
Recommendation: again, you can ignore things like gathering dictionary stats in advance...if you like upgrades to be slower and downtime to be longer. But ignoring a recommendation won't hurt anything. If you don't remove the DBCONTROL component, for example, this will be done during the upgrade, which means extra downtime. If you can't touch the production environment, then don't worry about it.

ii. Warning: Hey, just because we say you need more shared pool doesn't mean you actually have to raise that setting in the new environment. But, don't say we didn't literally warn you.

iii. Error: Ignore this and the upgrade just won't work

3. When migrating to a new server, the best way to handle it is

a. Download the latest version of the pre-upgrade script
b. Run the pre-upgrade on the production database and review the recommendations
c. If you don't want to implement any of those on the source, then implement the recommendations on the targe
d. Don't go to 12.2.0.1 -- upgrade to 19c

You don't need an 11.2.0.4 installation on the target system, because any of the things we recommend that would require 11.2.0.4 are there to allow you to reduce downtime during the upgrade. These are things like removing DBCONTROL, moving or preprocessing audit records, emptying the recycle bin, and so on. We will do those during the upgrade if needed. I don't know of any ERROR conditions that would require modifying the source database for an upgrade.


Is this answer out of date? If it is, please let us know via a Comment

More to Explore

Administration

Need more information on Administration? Check out the Administrators guide for the Oracle Database