connectMongoDB

Connects to a MongoDB instance.

If the host/port form is used, default settings will be used, which enable safe updates, but no fsync. By specifying a URL instead, it is possible to fully customize the settings. See http://www.mongodb.org/display/DOCS/Connections for the complete set of options. Note that 'sslverifycertificate' is only present in some client bindings, including here.

Note that the returned MongoClient uses a vibe.core.connectionpool.ConnectionPool internally to create and reuse connections as necessary. Thus, the MongoClient instance can - and should - be shared among all fibers in a thread by storing in in a thread local variable.

Authentication: Authenticated connections are supported by using a URL connection string such as "mongodb://user:password@host". SCRAM-SHA-1 is used by default.

  1. MongoClient connectMongoDB(string host, ushort port)
    @safe
    connectMongoDB
    (
    string host
    ,
    ushort port
    )
  2. MongoClient connectMongoDB(string host_or_url)
  3. MongoClient connectMongoDB(MongoClientSettings settings)

Parameters

host string

Specifies the host name or IP address of the MongoDB server.

port ushort

Can be used to specify the port of the MongoDB server if different from the default one.

Return Value

A new MongoClient instance that can be used to access the database.

Throws

Throws an exception if a mongodb:// URL is given and the URL cannot be parsed. An exception will not be thrown if called with a hostname and port.

Examples

// connecting with default settings:
auto client = connectMongoDB("127.0.0.1");
auto users = client.getCollection("users");
users.insert(Bson("peter"));
// connecting using the URL form with custom settings
auto client = connectMongoDB("mongodb://localhost/?slaveOk=true");
// connecting with SSL encryption enabled and verification off
auto client = connectMongoDB("mongodb://localhost/?ssl=true&sslverifycertificate=false");

Meta