PostgreSQL Upgrade and Migration
From 9.5.x to 9.6.x
The process to migrate an PosgreSQL 9.5.x database deployment to a PostgreSQL 9.6.x deployment involves using a recent or on-demand backup to restore the data into a new deployment.
Why restore to upgrade
As a matter of policy, when a major upgrade is needed, we only enable upgrade through restoring into a new deployment. It has a number of advantages for users:
- The original database stays running and production work can be uninterrupted.
- Users will be able to test the new database out of production and act on any application incompatibilities.
- The entire process can be re-run at any point.
- A fresh restoration reduces the likelihood of unneeded artifacts of the older version of the database are carried over to the new database.
Select or create a backup
Go to the 9.5.x deployment's Backup tab. If you are happy to restore from one of the existing daily backups move on to the next step. If you want to create a new up-to-date backup, click the Backup Now button.

Available backups on a PostgreSQL deployment.
You will be sent to the Jobs tab to see the progress of the backup that is being created. When it is complete, return to the Backup tab where the new backup will be available in the table under On-Demand Backup section.
Begin a restore
For the backup you have selected to use, click on the circular arrow to the right of the backup's entry in the table.

Selecting to restore to a new deployment.
This will take you to the New PostgreSQL Deployment view to configure your new deployment. You can use the generated deployment name or enter a new name. You should select the location for your new deployment from the available datacenters or private clusters displayed in the drop-down menu.
Finally, select the version to upgrade to. You will be shown all versions the backup can be restored to and that does include the current version — that's allowed to enable cloning of databases. In this case, we want to select 9.6.x and then click Create Deployment.

New PostgreSQL deployment options.
This will take you to the New Deployment screen and show you the progress of creating your newly upgraded deployment.
After migrating
All of the roles and privileges in your databases will carry over into your new deployment. Extensions are also carried over.
Still Need Help?
If this article didn't solve things, summon a human and get some help!
Updated over 3 years ago