Oracle offers several methods to upgrade your database, which support the complexities of your enterprise.
The AutoUpgrade Utility Method for Upgrading Oracle Database
The AutoUpgrade utility identifies issues before upgrades, performs pre- and postupgrade actions, deploys upgrades, performs postupgrade actions, and starts the upgraded Oracle Database.
The AutoUpgrade utility is designed to automate the upgrade process, both before starting upgrades, during upgrade deployments, and during postupgrade checks and configuration migration. You use AutoUpgrade after you have downloaded binaries for the new Oracle Database release, and set up new release Oracle homes. When you use AutoUpgrade, you can upgrade multiple Oracle Database deployments at the same time, using a single configuration file, customized as needed for each database deployment.
The Graphical User Interface Method for Upgrading Oracle Database
Database Upgrade Assistant (DBUA) interactively steps you through the upgrade process and configures the database for the new Oracle Database release.
The preferred option for upgrading Oracle Database is to use the AutoUpgrade utility. However, you can use DBUA to upgrade multitenant architecture container databases (CDB), and pluggable databases (PDBs). Starting with Oracle Database 20c, you can no longer use DBCA to upgrade to a non-CDB Oracle Database.
DBUA starts the Pre-Upgrade Information Tool, which fixes some configuration settings to the values required for the upgrade. For example, the tool can change initialization parameters to values required for the upgrade. The tool also provides you with a list of items that you can fix manually before you continue with the upgrade.
The Manual, Command-Line Method for Upgrading Oracle Database
Manual upgrades give you finer control over the upgrade process.
A manual upgrade consists of running SQL scripts and utilities from a command line to upgrade a database to the new Oracle Database release.
Before the Upgrade
Analyze the database using the Pre-Upgrade Information Tool.
The Pre-Upgrade Information Tool is a Java JAR file that is supplied with Oracle Database. When you start the tool, it self-extracts, and then executes SQL scripts that perform diagnostics. The tool then displays information about possible upgrade issues, the reason why these issues are occurring, and the actions that you must take to resolve them. The tool also generates fixup scripts for some issues.
Prepare the new Oracle home.
Perform a backup of the database.
Depending on the Oracle Database release that you upgrade, you can be required to perform more preupgrade steps. These steps can include adjusting the parameter file for the upgrade, removing desupported initialization parameters, or adjusting initialization parameters that can cause upgrade problems.
The Export/Import Method for Migrating Data When Upgrading Oracle Database
You can use Oracle Data Pump to carry out data exports and imports.
The Effects of Export/Import on Upgraded Oracle Databases
Review this topic to understand the benefits of Export/Import data migration.
The Export/Import data migration method does not change the current database, which enables the database to remain available throughout the upgrade process. However, if a consistent snapshot of the database is required (for data integrity or other purposes), then the database must run in restricted mode or must otherwise be protected from changes during the export procedure. Because the current database can remain available, you can, for example, keep an existing production database running while the newly upgraded Oracle Database database is being built at the same time by Export/Import. During the upgrade, to maintain complete database consistency, changes to the data in the database cannot be permitted without the same changes to the data in the newly upgraded Oracle database.
Most importantly, the Export/Import operation results in a completely new database. Although the current target database ultimately contains a copy of the specified data that you migrated, the upgraded database can perform differently from the original source database. Although Export/Import creates an identical copy of the database, other factors can cause unexpected performance issues. (For example: disk placement of data, and unset tuning parameters).
Export/Import Benefits for Migrating Data for Oracle Database
Migrating data when upgrading Oracle Database using Export/Import provides benefits that can increase performance.
Using Export/Import to migrate data provides the following benefits:
Defragments the data. You can compress the imported data to improve performance.
Restructures the database. You can create new tablespaces or modify existing tables, tablespaces, or partitions that you want to populate with imported data.
Facilitates side-by-side testing of the old and new releases of Oracle Database because an entirely new database is created.
Enables the copying of specified database objects or users. Importing only the objects, users, and other items you need is useful for establishing a test environment for the new software on only a subset of the production data. Data Pump Export/Import provides flexible data-subsetting capabilities.
Serves as a backup archive. You can use a full database export as an archive of the current database.
Enables you to establish the upgraded database on a different operating system or hardware platform than the platform on which your earlier release database is placed.
Network-based Data Pump Import enables you to load the new release Oracle Database directly across the network for your earlier release Oracle Database. By using network-based Data Pump import, you are not required to use intervening dump files.
Time Requirements for Migrating Data and Upgrading with Export/Import
Understand the time it takes for data migration and software upgrades.
Migrating data and upgrading an entire Oracle database by using Export/Import can take a long time, especially compared to using DBUA or performing a manual upgrade. You may need to schedule the upgrade during non-peak hours or make provisions for propagating to the new database any changes that are made to the current database during the upgrade.