MongoDB Upgrades and Migrations

Upgrading to 3.6.x

You can upgrade your existing MongoDB deployment to version 3.6.x. If you are running version 3.4.x, you can upgrade in-place, in a single step from the Settings panel on your deployment.

If you are running MongoDB version 3.2.x, you will need to upgrade to version 3.4.x before going all the way up to 3.6.x. Both the upgrade from 3.2.x to 3.4.x and from 3.4.x to 3.6.x can be done in-place.

Upgrading to 3.4.x

If your deployment is running a MongoDB version 3.2.x and above, upgrading to 3.4.x only requires that you change the version in the Settings panel. The upgrade is then performed in place and there should be no further configuration needed.

Before Upgrading

Check the driver compatibility documentation or your current driver's documentation to ensure that the driver you are using will continue to work with MongoDB 3.4.x.

After Upgrading

Some new features in 3.4 break compatibility with previous versions of MongoDB. By upgrading a Compose deployment from 3.2.x to 3.4, the setFeatureCompatibilityVersion is automatically set to the upgraded version.

If you need to configure setFeatureCompatibilityVersion, connect to your deployment using the command-line and run the command:
db.adminCommand( { setFeatureCompatibilityVersion: "3.4" } )

After enabling, you will NOT be able to easily downgrade back to 3.2. MongoDB recommends running your database with setFeatureCompatibilityVersion set to '3.2' for some time until you are sure you won't need to downgrade. More information on feature compatibility is in the MongoDB docs.

Upgrading to 3.4.x from below 3.2.x

If your MongoDB version is below 3.2.x, you will have to migrate your data through the backup and restore process, as well as perform a few extra configuration steps to upgrade to 3.4.x.

Backup/Restore

  1. Select or create a backup - Go to the 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. 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.

  2. 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. This will take you to the New MongoDB Deployment view where you can configure your new deployment. Select the version to upgrade to. Click Create Deployment.

Recreate Users and Roles

  1. Users in the "admin" database are not be backed up and will not be restored into a new deployment. After migrating, you will have to recreate the users that were in old deployment's "admin" database.

  2. Users and permissions that were otherwise granted on a per-database level will also need to be recreated along with their permissions.

Update Connected Applications

  1. Since the data is being migrated into a new deployment, the connection strings will change. You will need to update any applications or other connected services with the new strings from the Connection Info panel of the MongoDB 3.4 deployment.

  2. You will also have to update your applications with the new self-signed certificate that backs the TLS/SSL enabled connections. The certificate will be in the Connection Info section of your deployment's Overview. Consult your driver's documentation for using certificates when connecting or check out Connecting to MongoDB for more information.


Still Need Help?

If this article didn't solve things, summon a human and get some help!