Upgrade database schemas
Locate upgrade scripts folder in distribution zip file. For example, /database/oracle/upgrade, /database/postgres/upgrade, /database/mysql/upgrade. This folder(s) includes a number of folders containing migration.sql, which upgrade the FlexDeploy schemas.
You will need to execute one or more SQL script(s) from the version of FlexDeploy you currently have, up to the latest version. And they must be executed in that order.
Follow this guideline when deriving SQL files to be executed.
Current version is 4.6.0.0 or higher
- Look at Build Version in About window.
Current version is before 4.6.0.0
- 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.
See some examples below to help you understand database upgrade process.
v5.2.0.0-to-5.2.0.1/migration.sql v5.2.0.1-to-5.3.0.0/migration.sql v5.3.0.0-to-v5.3.0.2/migration.sql v5.3.0.2-to-v5.3.0.3/migration.sq
v5.1.0.0-to-5.1.0.3/migration.sql v5.1.0.3-to-v5.2.0.0/migration.sql v5.2.0.0-to-5.2.0.1/migration.sql v5.2.0.1-to-5.3.0.0/migration.sql v5.3.0.0-to-v5.3.0.2/migration.sql v5.3.0.2-to-v5.3.0.3/migration.sq
v5.0.0.0-to-v5.1.0.0/migration.sql v5.1.0.0-to-5.1.0.3/migration.sql v5.1.0.3-to-v5.2.0.0/migration.sql v5.2.0.0-to-5.2.0.1/migration.sql v5.2.0.1-to-5.3.0.0/migration.sql v5.3.0.0-to-v5.3.0.2/migration.sql v5.3.0.2-to-v5.3.0.3/migration.sql
Executing migration files
Once you have decided which migration scripts to execute, you need to run them against your database using database specific tools in proper sequence.
Oracle
These scripts should be executed as system, sys, 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. Instructions below are for using the sqlplus client.
sqlplus
Oracle SQL*Plus 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.
Make sure to spool output to a file, so it can be analyzed later if necessary.
To launch sqlplus:
export ORACLE_HOME=<your Oracle Home directory> export ORACLE_SID=<the SID of your database> spool migration5.2.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 migration5.2.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,
PostgreSQL
These scripts should be executed as postgres or another super user which has privileges to create objects in other schemas, performs grants, etc. Change the bold text as needed in your environment.
Linux
- Run FlexDeploy migration scripts. Type the password when asked. PostgresDDL.txt records the output of the script so that you can refer back to it later.
- cd <Flexdeploy Unzip Folder>\database\postgres\upgrade\vx.y.0.z-v.a.b.0.c
- /path/to/psql -U postgres -h hostname -p 5432 -d flexdeploy -a -b -e -f migration.sql > PostgresDDL.txt
Windows
- Run FlexDeploy scripts. Type the password when asked. PostgresDDL.txt records the output of the script so that you can refer back to it later.
- cd <Unzip Folder>/database/postgres/upgrade/vx.y.0.z-v.a.b.0.c
- C:\path\to\psql -U postgres -h hostname -p 5432 -d flexdeploy -a -b -e -f migration.sql > PostgresDDL.txt
- style