How do I migrate my Hub configuration between databases?
- Last updated
- Save as PDF
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.
-
Prepare the database as specified here.
-
Note: The database should be blank (i.e., no tables) aside from the settings in the setup documentation.
-
-
Stop all integrations and shut down Hub.
-
Update the files/folders in the Database Folder:
-
Rename
tasktop-db.json
(e.g.,tasktop-db.json-old
) -
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.
-
-
Copy the
JDBC
driver for the new database into theJDBC-driver
folder. -
Start Hub. This will start Planview Hub with a fresh Derby database.
-
Open the Hub web UI and enter your master password.
-
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.
-
-
Provide your Hub license file.
-
In the Hub UI, navigate to Settings > General and select Use External Database.
-
Change the
JDBC
driver, select your newJDBC
driver. -
Enter the new database credentials (i.e., location, username, password).
-
Click Save and then Transfer.
-
Note: This will instruct Hub to create a new blank database with the schema specific for your new database type.
-
-
-
Stop Hub.
-
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.
-
Tables that do not need to be migrated are:
-
DatabaseChangeLog
-
DatabaseChangeLogLock
-
LEASE
-
-
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 theconfiguration
table and then copy the data from the old database.-
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.
-
-
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 themigration_state
table and then copy the data from the old database. -
Any other tables can be migrated.
-
-
Start Hub.
-
Check that there are no Issues on the Activity screen and perform a Repository Test Connection for all repositories.
-
Ensure you can see all configurations (e.g., integrations, collections) and synchronizations are working as expected.
-
If your configurations look correct and there are no issues, restart all integrations.
-
Finally, clean up any temporary files/folders that you may have renamed during the process.