Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)
This page is for system administrators who are upgrading an existing PhixFlow instance from one release to another. This page explains the standardsteps that you should always follow.
Some releases contain special instructions.
When planning an upgrade, please check the special instructions for each intermediate release and follow the additional steps as indicated.
Planning your Upgrade
Check Supported Versions and Special Instructions
Please read the System Requirements and Compatibility page. Check for any special upgrade instructions between your current and target versions of PhixFlow.
Ensure that your versions of:
the database
Tomcat
Java
are supported in the planned upgrade.
Sections on this page
If any of these items need updating, please contact your IT team several weeks in advance of the planned upgrade.
Check Java and Database Connectors
If Java needs upgrading, you must verify that any JDBC connectors you have installed to non-standard databases are still supported. The standard databases supported by PhixFlow are Oracle, MS SQL Server and MySQL/ MySQL. The drivers needed to connect to these databases are shipped with PhixFlow, and connections to external databases through PhixFlow data sources are supported by these drivers; see Datasource.
However, if you have connections to external databases other than these - for example, Netezza, Teradata, DB2 - then you will have installed JDBC drivers for these in the folder [tomcat home]/lib. You must check that your current version of each installed driver is compatible with the new version of Java, and if not, obtain a new version of the JDBC driver from the supplier.
How to Upgrade
Step 1 Backup your Database
Ensure that you have a recent, full backup of your PhixFlow database. If you need to rollback (see "Rollback Upgrade" below), your PhixFlow configuration and data will revert to this point.
We also recommend that you:
Review your installation for any remaining uses of the discontinued features mentioned in the release notes. All data related to the use of these features will be removed when PhixFlow is migrated to the new version.
Backup all tables except those whose names begin with a 'zz'. This backs up the data tables that do not contain table data.
Step 2 Review Special Upgrade Instructions
Review the Special Upgrade Instructions for all the intermediate releases between your current version and the version to which you are upgrading. make a note of any that will need to be performed during the upgrade.
Step 3 Upgrade the Environment
If necessary, upgrade to supported versions of Java, Tomcat and your database: Oracle, SQL Server or MySQL / MySQL. See Planning your Upgrade, above.
Remember, if you are Upgrading Tomcat, to restore any JDBC drivers needed for any data sources that use database technologies or versions not supported for PhixFlow's own connections. Make sure that any additional JDBC drivers you use are placed in:
Unzip the PhixFlow release package into a temporary directory.
We will refer to the new PhixFlow release directory as $RELEASE and its corresponding Tomcat directory as $TOMCAT.
Step 5 Install the New Webapp into Tomcat
Move the live PhixFlow installation directory, $TOMCAT/webapps/phixflow, to an archive location.
For example, on Linux: mv $TOMCAT/webapps/phixflow $ARCHIVE/phixflow-<current date>
Copy $RELEASE/webapp/phixflow to $TOMCAT/webapps.
For example, on Linux: cp -r $RELEASE/webapp/phixflow $TOMCAT/webapps/phixflow
From PhixFlow version 11.0.1, the database schema updates are recorded in the System Console → Audit Summary Tab, with the Action Description starting with “Executing db\upgrade”.
Step 6 Configure the Webapp
The webapp configuration step depends on which version you are upgrading from and to. Please follow the appropriate section below
Upgrading an existing Version 11 or latest system
Automated upgrading of the database schema is now supported.
In the archive of the live installation, go to the $TOMCAT/webapps/phixflow/WEB-INF/classes/ directory. Copy the following files into the corresponding directory in the new PhixFlow webapp if they exist:
If you have configured PhixFlow to show your company logo, also copy $ARCHIVE/phixflow-<current date>/gui/images/customerLogo.svg from the archive to the corresponding directory in the new PhixFlow webapp.
Soft Links
If you have configured soft links (also called symlinks or datalinks) between PhixFlow and Tomcat, recreate them. Example scripts are provided below, these examples assume your application is called phixflow. For more details see Configuring Soft Links.
Upgrading to version 11 or later from pre version 11
Direct upgrading from version 8.3.18 onwards to version 11.0.1 or later is supported with automatic database schema upgrade. (8.3.24 for 11.0.0).
This process requires migrating the configuration settings from the modified xml settings into the local.properties file. It is assumed a keystore was previously configured.
Review the files in the archive at the following location $ARCHIVE/phixflow-<current date>/WEB-INF/classes/
If Active Directory was previously used the following configuration settings may need to be configured. Refer to phixflow-secret.xml for existing values.
If SAML was previously used the following configuration settings may need to be configured. Refer to phixflow-secret.xml for existing values.
Company Logo
If you have configured PhixFlow to show your company logo, also copy $ARCHIVE/phixflow-<current date>/gui/images/customerLogo.svg from the archive to the corresponding directory in the new PhixFlow webapp.
Soft Links
If you have configured soft links (also called symlinks or datalinks) between PhixFlow and Tomcat, recreate them. Example scripts are provided below, these examples assume your application is called phixflow. For more details see Configuring Soft Links.
In the archive of the live installation, go to the $TOMCAT/webapps/phixflow/WEB-INF/classes/ directory. Copy the following files into the corresponding directory in the new PhixFlow webapp:
logback.xml
phixflow-datasource.xml
phixflow-logging.xml
phixflow-login.xml
phixflow-secret.xml
For example, on Linux: cp $ARCHIVE/phixflow-<current date>/WEB-INF/classes/phixflow-datasource.xml $TOMCAT/webapps/phixflow/WEB-INF/classes
Company Logo
If you have configured PhixFlow to show your company logo, also copy $ARCHIVE/phixflow-<current date>/gui/images/customerLogo.svg from the archive to the corresponding directory in the new PhixFlow webapp.
Soft Links
If you have configured soft links (also called symlinks or datalinks) between PhixFlow and Tomcat, recreate them. Example scripts are provided below, these examples assume your application is called phixflow. For more details see Configuring Soft Links.
Run all migration scripts in sequence from the starting version to this version.
About Migration Warnings
Some of the scripts can generate warning messages, such as Caution: Changing any part of an object name could break scripts and stored procedures. Generally, warning messages do not indicate a problem. However, if you see any error messages, please contact your PhixFlow support team.
Example for migrating Oracle
cd $RELEASE/install/schema/oracle/migration/X.Y
sqlplus myUsername/myPassword @migrate_schema_from_x_y_z_to_X_Y_Z.sql
cd $RELEASE/install/schema/my_sql/migration/X.Y
mysql -h myServer -u myUsername -p -D myDatabase
source migrate_schema_from_x_y_z_to_X_Y_Z.sql
MySQL Privileges
Some MySQL PhixFlow migration scripts create or use privileged functions and/or procedures. If you have followed PhixFlow's recommended installation, running non-deterministic functions will be permanently allowed by a setting (global log_bin_trust_function_creators) in my.cnf (see Install MySQL).
If you have not permanently set this in my.cnf, you will need to turn this on in the session you are using to perform the upgrade with the command:
set global log_bin_trust_function_creators = 1;
Alternatively, ensure that that the database user performing the upgrade has SUPER privilege.
Step 7 Re-start Tomcat
Restart the Tomcat service and verify you can login successfully.
Step 8 Special Upgrade Instructions
Review all special upgrade instructions have been implemented.