- Tutorials
- Connect to MongoDB
Connect to MongoDB
Note
This reference applies to 2.1.11 or higher. For 2.1.10 or earlier, refer to the legacy connection settings. 2.1.11 is backward compatible with the legacy settings as well as the simplified settings.
Use the MongoClient.connect
method to connect to a running MongoDB deployment.
Connect to a Single MongoDB Instance
To connect to a single MongoDB instance, specify the URI of the MongoDB instance to connect to.
In the following example, the
URI connection string
specifies connecting to a MongoDB instance that is running on
localhost
using port 27017
. The myproject
indicates the database
to use. If the database is omitted, the MongoClient
uses the default test
database:
var MongoClient = require('mongodb').MongoClient
, assert = require('assert');
// Connection URL
var url = 'mongodb://localhost:27017/myproject';
// Use connect method to connect to the server
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected successfully to server");
db.close();
});
For more information on the URI connection string, see URI Connection String .
Connect to a Replica Set
To connect to a replica set, include a seedlist of replica set members and the name of the replica set in the URI connection string.
In the following example, the connection string specifies two of the replica set members running on localhost:27017
and localhost:27018
, the database to access (myproject
), and the name of the replica set (foo
). When using the 2.0 driver, you must include the replica set name.
var MongoClient = require('mongodb').MongoClient
, assert = require('assert');
// Connection URL
var url = 'mongodb://localhost:27017,localhost:27018/myproject?replicaSet=foo';
// Use connect method to connect to the Server
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected correctly to server");
db.close();
});
For more information on the URI connection string, see URI Connection String .
Connect to Sharded Cluster
To connect to a sharded cluster, specify the mongos
instance or instances in the URI connection string.
In the following example, the connection string specifies the mongos
instances running on localhost:50000
and localhost:50001
and the database to access (myproject
).
var MongoClient = require('mongodb').MongoClient
, assert = require('assert');
// Connection URL
var url = 'mongodb://localhost:50000,localhost:50001/myproject';
// Use connect method to connect to the Server
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected successfully to server");
db.close();
});
For more information on the URI connection string, see URI Connection String .
Connection Options
You can specify various connection settings in the URI Connection String .
For example, you can specify TLS/SSL and authentication setting.
var MongoClient = require('mongodb').MongoClient,
f = require('util').format,
assert = require('assert'),
fs = require('fs');
// Read the certificate authority
var ca = [fs.readFileSync(__dirname + "/ssl/ca.pem")];
var cert = fs.readFileSync(__dirname + "/ssl/client.pem");
// Connection URL
var url = 'mongodb://dave:password@localhost:27017?authMechanism=DEFAULT&authSource=db&ssl=true"';
// Use connect method to connect to the Server passing in
// additional options
MongoClient.connect(url, {
server: {
sslValidate:true
, sslCA:ca
, sslCert:cert
}
}, function(err, db) {
assert.equal(null, err);
console.log("Connected correctly to server");
db.close();
});
For more information on connecting with authentication and TSL/SSL, see:
- Authentication: detailed documentation of the various ways to specify authentication credentials
- TLS/SSL: Detailed documentation of the various ways to specify the properties of an TLS/SSL connection
For more information on the connection options:
- URI Connection String: MongoDB connection string URI.
- Connection Settings: Reference on the driver-specific connection settings.