It seems to be a simple question but to predict the upgrade duration is really hard to do.
Due to the fact that an Oracle database upgrade doesn’t touch or change data the duration is totally independent of the size of the database. It won’t make any difference if the database is 2 GB or 28 TB of size.
The main factors determine the upgrade duration in descending order are:
- Number of installed database components and options – the more components/option gotten installed, the more upgrade scripts will have to be run, the longer it’ll take
- Valid and non-stale dictionary statistics – even though creating dictionary statistics in some older releases of Oracle wasn’t a brilliant idea since desupport of the rule based optimizer the data dictionary should be analyzed. Especially right before an upgrade. Otherwise this will happen during the upgrade while the database is started in a restriceted upgrade mode causing addtional downtime.
- Number of rows in AUD$ if audit_trail is set to DB
- Number of synonyms when upgrading from Oracle 9i – synonyms will be touched and get a new dependency in the dictionary in DEPENDENCY$ – if there’s a high number (such as 100,000) this can eat up some time
- Number of objects in XDB
- At a very low rate if COMPATIBLE will be increased: Number of datafiles and the size of the redologs