Oracle Database Downgrade with the Downgrade Scripts from 19 3 0 to 12 2 0 1

YouTube video

In this article, we will discuss how to downgrade an Oracle database from version 19.3.0 to using the downgrade scripts. Downgrading your database can be necessary for a variety of reasons, such as compatibility issues or the need to go back to a previous version. We will walk you through the step-by-step process of downgrading your database, ensuring that no data is lost in the process.

Key Points:

  1. Upgrade the database to version 19.3.0
  2. Ensure that the compatible parameter is not changed
  3. Start the database in downgrade mode
  4. Clean up the audit trail for unified auditing
  5. Downgrade the database using the downgrade script
  6. Restart the database in upgrade mode
  7. Reload the PL/SQL engine
  8. Recompile the futile RP

Step 1: Upgrade the Database

Before we can begin the downgrade process, we need to first upgrade the database to version 19.3.0. This can be done using the auto upgrade feature, which includes upgrading the timezone as well. It is important to note that the source and destination databases should have the same timezone file.

Step 2: Ensure the Compatible Parameter is Unchanged

Once the upgrade is complete, it is important to ensure that the compatible parameter is not changed. This parameter determines the version of the database the instance is compatible with. In order to proceed with the downgrade, the compatible parameter must remain the same.

Step 3: Start the Database in Downgrade Mode

To initiate the downgrade process, the database needs to be started in downgrade mode. This is a special mode specifically designed for downgrades. Use the “startup downgrade” command to start the database in this mode.

Step 4: Clean Up the Audit Trail

During the downgrade process, you may encounter an error message related to the unified audit train data. This error is caused by the mixed mode of unified auditing. To resolve this issue, the audit trail needs to be cleaned up before proceeding with the downgrade. This can be done by executing a cleanup script.

Step 5: Execute the Downgrade Script

After cleaning up the audit trail, the downgrade script can be executed. This script will perform the downgrade process, reverting the database to the desired version. The downgrade process usually takes about three minutes to complete.

Step 6: Restart the Database in Upgrade Mode

Once the downgrade process is finished, the source environment needs to be restarted in upgrade mode. This is necessary to reload the PL/SQL engine and other components that were removed during the downgrade. Execute the “startup upgrade” command to restart the database in upgrade mode.

Step 7: Reload the PL/SQL Engine

After restarting the source environment in upgrade mode, the PL/SQL engine needs to be reloaded. This can be done by executing the reload script. The script will load the PL/SQL engine and other necessary components back into the database. The reload process usually takes about 16 minutes.

Step 8: Recompile the Futile RP

Once the reload process is complete, reconnect to the database and recompile the futile RP. This step is necessary to recompile any invalid PL/SQL objects that may exist after the downgrade process. The recompilation process is usually quick and only takes a few seconds.


In conclusion, downgrading an Oracle database from version 19.3.0 to can be achieved by following the step-by-step process outlined in this article. By carefully executing each step and ensuring the compatibility parameter remains unchanged, you can successfully downgrade your database without losing any data. This process is a fast and efficient way to rollback a failed upgrade and return to a previous version of the Oracle database.

Thank you for reading this article. We hope you found it helpful in understanding the process of downgrading an Oracle database.