Migrating between MSSQL and Postgres for Atlassian Tools

In a previous blog post, we went over the general steps for migrating between two databases, like going from Mysql to Postgres for Atlassian tools. In a recent customer engagement, we migrated their JIRA Software, and Confluence instances from an on-premise environment using the MSSQL database to our Codefactori managed hosting environment on AWS with RDS Postgres. The diagrams below highlight the end state architecture for JIRA and Confluence in the AWS Environments:

Jira on AWS architecture diagram

Confluence on AWS architecture diagram

After creating the baseline infrastructure based on our automated setup, we created temporary MSSQL based RDS instances for JIRA and Confluence. We migrated the customer-provided MSSQL database export into RDS temporarily until we could migrate the data to Postgres in RDS. 

We performed these steps for the overall migration for JIRA and Confluence after the initial setup with no existing data:

  1. Stop Jira/Confluence 
  2. Update dbconfig.xml/confluence.cfg.xml to point to the MS SQL database temporarily. Make sure to back up the files before modifications.
  3. Use rsync to transfer the existing data like attachments
  4. Start Jira/Confluence and validate that all existing data has been migrated.
  5. Take an XML export of the data.
  6. Recreate the Postgres RDS databases and restore the original unmodified dbconfig.xml/confluence.cfg.xml
  7. Import the XML data.
  8. Start JIRA/Confluence 
  9. Update apps/plugins if required
  10. Run Reindex/Integrity Checks/Troubleshooting Tools
  11. Perform validation to ensure data has been successfully migrated

Codefactori’s automated setup and migration helped ensure minimal downtime and reduced the chances of errors due to manual steps. Please get in touch with us if you are interested in our managed hosting or utilizing this automation for Atlassian and DevOps tools you are hosting on your self-managed on-premise or cloud infrastructure.

Related Content
work from anywhere
Embracing the Freedom: Work from anywhere
If our products can be used from anywhere, we should also be able to work from anywhere. This blog shows...
Jira Accessibility: Best Practices for enhancing collaboration
Jira is a powerful tool to streamline workflows and enhance productivity. This blog explores four best...
The Perfect Match: Confluence & Excellentable
Discover the perfect match for your team's collaboration needs this Valentine's Day. Learn how to seamlessly...

Leave a Reply

Your email address will not be published. Required fields are marked *