Installation steps

Gluesync NoSQL to NoSQL for MongoDB


In order to have Gluesync working on your MongoDB instance you will need to have:

  • valid user credentials with permissions of reading, writing to the target database

If you’re considering running Gluesync on a MongoDB Atlas DBaaS, please consider also looking at the specific section Deploying in MongoDB Atlas DBaaS here below in that page.

Basic configuration example

This module can be customized by using a configuration file, in JSON format. The file name to use must be specified as parameter when launching the app, with the -f or --file tokens. The file should be composed by union of common configuration file (see here Installation steps) and source/destination specific configuration:

  "mongodb": {
    "enableRecursionProtection": false,
    "certificatesPath": "/path/to/certs/dir/cert.pem",
    "useDnsSeedList" : true,
    "timeoutSeconds": 60,
    "disableAuth": false,
    "authDatabase": "NAME_OF_AUTH_DATABASE_IF_ANY"

MongoDB specific configurations are listed under the mongodb property:

  • enableRecursionProtection: boolean that avoid recursion when two ways sync capability is configured on the same table. If entities are different from SQL to NoSQL configuration this field should be false in order to improve performance, if entities are the same this field must be set true to avoid recursion loop. Default value is false;

  • certificatesPath (optional): the path to the certificates that need to be used when connecting to MongoDB instance using a secure connection. If omitted, no certificates are used;

  • timeoutSeconds (optional): number of seconds to set as timeout for operations involving communication with MongoDB. Default value is 60 seconds.

  • useDnsSeedList (optional): set it to true in order to let the MongoDB SDK to retrieve the cluster definition from the srv record in the provided dns address, mandatory when you are performing a connection to MongoDB Atlas (for example).

  • disableAuth (optional), defaults to false: you can set that parameter to true in order to disable the authentication mechanism when you’re connecting to a development instance of MongoDB,

  • authDatabase (optional), default to null: use this field when authenticating against a MongoDB server who requires you to specify a different authentication database.

Deploying in MongoDB Atlas DBaaS

Gluesync it is fully compatible for working within MongoDB Atlas DBaaS. In order to enstablish a connection to a MongoDB Atlas Cluster you just need to have:

  • valid .pem certificate file;

  • the host name of your Atlas instance, for example:

credentials keypair it is not needed when connecting using a .pem certificate to your instance.


Here following the list of common errors.

  • AuthenticationFailed - Error 18: You might either have specified a wrong database name as a authentication database or the user that your using to connect against the source database does not belong to it, you should issue the correct authentication database where this user is defined. For more detailed info please check out official MongoDB documentation visiting the following link: using Authentication Database.