Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page is for system administrators who are upgrading an existing installation to a new version of PhixFlow.

These are the general steps that you should always follow when upgrading and an existing PhixFlow instance from one release to another.

Warning

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.

...

This page includes the following sections:

Table of Contents

...

Planning your Upgrade
Anchor
preparation
preparation

Check supported versions and special instructions

Please read the Compatibility Guide and Upgrade Planning to ensure that your version of database, tomcat and java  page. Check for any special upgrade instructions between your current and target versions of PhixFlow.

Ensure that your versions of:

  • the database(s)
  • Apache Tomcat
  • Java

that are supported in the planned upgrade.

Note

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/ MariaDB. The drivers needed to connect to these databases are shipped with PhixFlow, and connections to external databases though through PhixFlow datasources 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

...

folder [tomcat

...

home]/lib

...

. You must check that your current version of each installed driver is compatible with the new version of javaJava, and if not, obtain a new version of the JDBC driver from the supplier.

Special upgrade instructions

Also check Compatibility Guide and Upgrade Planning for any special upgrade instructions between your current and target versions.

Upgrade

How to Upgrade

Step 1 - Backup your Database

Ensure that you have a recent, full backup of your database. If , for any reason, you need to rollback (see "Rollback Upgrade" below), your PhixFlow configuration and data will revert to this point.

Step 2 - Stop Apache Tomcat

Stop Apache Tomcat.

Note

PhixFlow will not be available to users until the upgrade is complete.

Step 3 - Upgrade the Environment

If necessary, upgrade to supported versions of Java, Apache Tomcat and your database: Oracle, SQL Server or MySQL / MariaDB. See above for detailsSee Planning your Upgrade, above.

Remember, if you are upgrading tomcatApache Tomcat, to restore any JDBC drivers needed for datasources any data sources that use database technologies or versions not supported for PhixFlow's own connections. See Install Tomcat for details, but in brief, make Make sure that any additional JDBC drivers you use are placed in:

Code Block
[tomcat home]/lib

See also:

Step 4 - Unzip the PhixFlow Release

Unzip the PhixFlow release package into a temporary directory.

We will refer to the new PhixFlow release directory as $RELEASE. and its corresponding Apache Tomcat directory as $TOMCAT

Step 5 - Install the new Webapp into Apache Tomcat

Move the live phixflow PhixFlow installation , i.e. the directory directory, $TOMCAT/webapps/phixflow, to an archive location.

E.g. on unix/linuxFor example on Linux: mv $TOMCAT/webapps/phixflow $ARCHIVE/phixflow-<current date>

Copy $RELEASE/webapp/phixflow to $TOMCAT/webapps.

E.g. on unix/linux: cp For example on Linux: cp $RELEASE/webapp/phixflow $TOMCAT/webapps/phixflow

Copy the following files from the In the archive of the live installation, go to the  $TOMCAT/webapps/phixflow/WEB-INF/classes/ directory in the archive of the live installation . Copy the following files into the corresponding directry directory in the new phixflow PhixFlow webapp:

  • phixflow-datasourcelogin.xmlxml 
  • phixflow-instancedomains.xmlxml 
  • phixflow-domainsdatasource.xmlxml 
  • log4j.properties
  • phixflow-logininstance.xmlxml 

...

  • log4j.properties 

For example on Linux:cp $CV_ARCHIVE/phixflow-<current date>/WEB-INF/classes, to $TOMCAT/webapps/phixflow/WEB-INF/classes

If you have configured PhixFlow to show your company logo, also copy $TOMCAT/webapps/phixflow/gui/images/customerLogo.svg. from the archive to the new webapps folder.

Step 6 - Upgrade the Database

Run all migration scripts run in sequence from the starting version to this version.

Note
titleAbout Migration Warnings

Please note that some Some of the scripts can generate warning messages. One example of this is Caution: Changing any part of an object name could break scripts and stored procedures. Generally, these warning messages do not indicate a problem. However, in the event that you see any error messages, please contact your PhixFlow support team.

Oracle

...

Example for migrating Oracle

Code Block
cd $RELEASE/schema/oracle/migration/X.Y
sqlplus myUsername/myPassword @migrate_schema_from_x_y_z_to_X_Y_Z.sql

SQL Server

...

Example for migrating SQL Server

...

Code Block
cd $RELEASE/schema/sqlserver/migration/X.Y
sqlcmd -S myServer\myInstance -U myUsername -P myPassword -d myDatabase -i migrate_schema_from_x_y_z_to_X_Y_Z.sql

Example for migrating MariaDB (MySQL)

Code Block
titleE.g. for MariaDB users
cd $RELEASE/schema/sqlserver/migration/X.Y
mysql -h myServer -u myUsername -p -D myDatabase
source migrate_schema_from_x_y_z_to_X_Y_Z.sql


Warning
titleMariaDB Privileges

Some MariaDB PhixFlow migration scripts create or use privileged functions and/or procedures, and must have privileges not required by the regular PhixFlow user.

You can permanently allow functions like this to run by updating a setting in your my.cnf file. See Running non-deterministic functions in MariaDB for details. If you do not make this change, then you must make sure that either:

  • Your session has the log_bin_trust_function_creators setting switched on. You can do this with the command:
Code Block
set global log_bin_trust_function_creators = 1;
  • Or that the migration user has SUPER privilege.
Code Block
titleE.g. for MariaDB users
cd $RELEASE/schema/sqlserver/migration/X.Y
mysql -h myServer -u myUsername -p -D myDatabase
source migrate_schema_from_x_y_z_to_X_Y_Z.sql

Step 7 - Re-start Apache Tomcat

Complete

Restart the Apache Tomcat service. The upgrade is now complete and users can now access the new version of PhixFlow.