FlexDeploy Schema Upgrade

From the downloaded distribution, extract the /database/oracle/upgrade folder. This folder includes a number of folders containing migration.sql files which upgrade the FlexDeploy schemas along with Patch Release SQL files.

You will need to execute these scripts from the version of FlexDeploy you currently have, up to the latest version. And they must be executed in that order. See examples below if you are upgrading from FlexDeploy 3.7.1 to FlexDeploy 4.6 or FlexDeploy 4.0.0 to FlexDeploy 4.6.

The last file to run will be v4.5.0-to-v4.6.0.0/migration.sql. However, that file requires that you have already installed any other missing database scripts. The examples below explain which of those files you may need.

Upgrading 4.0 to 4.6.0.0
v4.0-to-v4.0.1/migration.sql
v4.0.1-to-v4.0.2/migration.sql
v4.0.2-to-v4.0.3/migration.sql
v4.0.3-to-v4.5.0/migration.sql
v4.5.0-to-v4.6.0.0/migration.sql

The 4.0.2-to-4.0.3/migration.sql file includes all of the 403PatchRelease*.sql files in it. Patch Release SQL files are only necessary if you are on a 4.0.3 or 4.5.x Release.

If you are upgrading from a 4.0.3 Patch Release, follow the date based SQL files in sequence by Date. If you have already a applied specific Patch Release patch then skip it. You can make determination of which Patch Release files to run by looking at Build Time on the About window of your FlexDeploy installation that you saved from a previous step. After completing the last 403PatchRelease, run the migration4.0.3_to_4.5.0.sql file and v4.5.0-to-v4.6.0.0/migration.sql. Contact Flexagon support for details if you are not sure. See example below.

Upgrading 4.0.3 (build time 4/23/2017 or earlier) to 4.6.0.0
v4.0.2-to-v4.0.3/403PatchRelease_04-24-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_05-01-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_05-5-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_05-11-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_05-22-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_06-14-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_07-19-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_07-24-2017.sql
v4.0.3-to-v4.5.0/migration.sql
v4.5.0-to-v4.6.0.0/migration.sql
Upgrading 4.0.3 (build time 5/11/2017) to 4.6.0.0
v4.0.2-to-v4.0.3/403PatchRelease_05-22-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_06-14-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_07-19-2017.sql
v4.0.2-to-v4.0.3/403PatchRelease_07-24-2017.sql
v4.0.3-to-v4.5.0/migration.sql
v4.5.0-to-v4.6.0.0/migration.sql
Upgrading 4.5.1 Patch Release 11-27-2017 to 4.6.0.0
v4.0.3-to-v4.5.0/450PatchRelease_12-09-2017.sql
v4.0.3-to-v4.5.0/450PatchRelease_01-12-2018.sql
v4.0.3-to-v4.5.0/450PatchRelease_01-30-2018.sql
v4.5.0-to-v4.6.0.0/migration.sql

Deriving SQL Patches applied

You can find which files that you may have already executed by doing "select version, created_on, created_by from fd.fd_flexdeploy_version order by created_on desc" database query.

Or you can view list of patches by using Administration - FlexDeploy Patches in FlexDeploy.

These scripts should be executed as systemsys, or another user which has privileges to create objects in other schemas, performs grants, etc.  You can load and execute these scripts using other tools such as Toad or SQL Developer, but the instructions here are for using the sqlplus client.

sqlplus

Oracle sqlus is part of the Oracle Client, and may be executed on any host which has it installed. If the Oracle Client is not installed on the same host as where you are installing FlexDeploy, you can copy the scripts to another host which has it installed.

To launch sqlplus:

export ORACLE_HOME=<your Oracle Home directory>
export ORACLE_SID=<the SID of your database>
spool migration4.5.0.out #(change for each script execution so logs are preserved)
$ORACLE_HOME/bin/sqlplus #(login as sys or system when prompted)
SQL> <<execute scripts as shown above>>

If running on another host other than the database server, you must update your tnsnames file and and launch sqlplus as follows:

export ORACLE_HOME=<your Oracle Home directory>
export ORACLE_SID=<the SID of your database>
spool migration4.5.0.out #(change for each script execution so logs are preserved)
$ORACLE_HOME/bin/sqlplus system@<tnsname>
SQL> <<execute scripts as shown above>>

For example,