Skip to main content
Planview Customer Success Center

How do I migrate my Hub configuration between databases?

Last Updated:   |  Applicable Hub Versions: All

Answer

On occasion, you may need to migrate your Hub configuration between databases. This FAQ documents the process that should be followed to migrate your configuration between databases.

Default Folder Locations

Windows

  • Database folder: C:\ProgramData\Tasktop\db

  • JDBC-drivers folder: C:\ProgramData\Tasktop\jdbc-drivers

  • Logs folder: C:\ProgramData\Tasktop\logs

Linux

  • Database folder/Tasktop/db

  • JDBC-drivers folder: /Tasktop/jdbc-drivers

  • Logs folder: /Tasktop/logs

Note: The above assumes that /Tasktop is where you have installed Tasktop Integration Hub.

Instructions

Before you begin, ensure that a valid backup of the current has been taken. This process is for the Hub configuration database only, and will not migrate Hub Enterprise Data Stream or Keycloak databases.

  1. Prepare the database as specified here.

    1. Note: The database should be blank (i.e., no tables) aside from the settings in the setup documentation.

  2. Stop all integrations and shut down Hub.

  3. Update the files/folders in the Database Folder:

    1. Rename tasktop-db.json (e.g., tasktop-db.json-old)

    2. Rename or delete the com.tasktop.platform folder. This is the default Derby database pre-packaged with Hub and is not used after you configure the external database.

  4. Copy the JDBC driver for the new database into the JDBC-driver folder.

  5. Start Hub. This will start Planview Hub with a fresh Derby database.

    1. Open the Hub web UI and enter your master password.

      1. Note: If you do not know the password, please see the following FAQ to reset your master password. You can then enter a new Master Password for this step. Once you get to step 7, be sure to reset the file/key so that the original password will be used.

    2. Provide your Hub license file.

    3. In the Hub UI, navigate to Settings > General and select Use External Database.

    4. Change the JDBC driver, select your new JDBC driver.

    5. Enter the new database credentials (i.e., location, username, password).

    6. Click Save and then Transfer

      1. Note: This will instruct Hub to create a new blank database with the schema specific for your new database type.

  6. Stop Hub.

  7. Migrate the database. The new database schema and tables will already be created. While the data for most tables can simply be taken from your old database and inserted into the new database, there are a few tables that will need different actions.

    1. Tables that do not need to be migrated are:

      • DatabaseChangeLog

      • DatabaseChangeLogLock

      • LEASE

    2. configuration table. The data in the new database table will contain initial Hub data from step 6, this data will need to be removed before you attempt to migrate from your old database. You'll need to truncate the configuration table and then copy the data from the old database. 

      1. Note: There should only be a single row in the configuration table. The last column will contain the actual configuration which is a single long JSON string, this needs to be valid before Hub will start.

    3. migration_state table. The data in the new database table will contain initial data from step 6, this data will need to be removed before you attempt to migrate from your old database. You'll need to truncate the migration_state table and then copy the data from the old database.

    4. Any other tables can be migrated.

  8. Start Hub.

  9. Check that there are no Issues on the Activity screen and perform a Repository Test Connection for all repositories.

  10. Ensure you can see all configurations (e.g., integrations, collections) and synchronizations are working as expected.

  11. If your configurations look correct and there are no issues, restart all integrations.

  12. Finally, clean up any temporary files/folders that you may have renamed during the process.