new MongoClient(url, options)
Creates a new MongoClient instance
Name | Type | Description |
---|---|---|
url |
string |
The connection URI string |
options |
MongoClientOptions |
optional
Optional settings |
Extends
- EventEmitter
Methods
-
staticMongoClient.connect(url, options){Promise.<MongoClient>}
-
Connect to MongoDB using a url as documented at
docs.mongodb.org/manual/reference/connection-string/
Note that for replicasets the replicaSet query parameter is required in the 2.0 driver
Name Type Description url
string The connection URI string
options
MongoClientOptions optional Optional settings
Returns:
Promise if no callback passed
-
close(force, callback){Promise}
-
Close the db and its underlying connections
Name Type Default Description force
boolean false optional Force close, emitting no events
callback
Db~noResultCallback optional The result callback
Returns:
Promise if no callback passed
-
connect(callback){Promise.<MongoClient>}
-
Connect to MongoDB using a url as documented at
docs.mongodb.org/manual/reference/connection-string/
Note that for replicasets the replicaSet query parameter is required in the 2.0 driver
Name Type Description callback
MongoClient~connectCallback optional The command result callback
Returns:
Promise if no callback passed
-
db(dbName, options){Db}
-
Create a new Db instance sharing the current socket connections. Be aware that the new db instances are
related in a parent-child relationship to the original instance so that events are correctly emitted on child
db instances. Child db instances are cached so performing db('db1') twice will return the same instance.
You can control these behaviors with the options noListener and returnNonCachedInstance.Name Type Description dbName
string optional The name of the database we want to use. If not provided, use database name from connection string.
options
object optional Optional settings.
Name Type Default Description noListener
boolean false optional Do not make the db an event listener to the original connection.
returnNonCachedInstance
boolean false optional Control if you want to return a cached instance or have a new one created
-
isConnected(options){boolean}
-
Check if MongoClient is connected
Name Type Description options
object optional Optional settings.
Name Type Default Description noListener
boolean false optional Do not make the db an event listener to the original connection.
returnNonCachedInstance
boolean false optional Control if you want to return a cached instance or have a new one created
- Deprecated
- Yes
-
startSession(options){ClientSession}
-
Starts a new session on the server
Name Type Description options
SessionOptions optional optional settings for a driver session
Returns:
newly established session
-
watch(pipeline, options){ChangeStream}
-
Create a new Change Stream, watching for new changes (insertions, updates, replacements, deletions, and invalidations) in this cluster. Will ignore all changes to system collections, as well as the local, admin,
and config databases.Name Type Description pipeline
Array optional An array of aggregation pipeline stages through which to pass change stream documents. This allows for filtering (using $match) and manipulating the change stream documents.
options
object optional Optional settings
Name Type Default Description fullDocument
string 'default' optional Allowed values: ‘default’, ‘updateLookup’. When set to ‘updateLookup’, the change stream will include both a delta describing the changes to the document, as well as a copy of the entire document that was changed from some time after the change occurred.
resumeAfter
object optional Specifies the logical starting point for the new change stream. This should be the _id field from a previously returned change stream document.
maxAwaitTimeMS
number optional The maximum amount of time for the server to wait on new documents to satisfy a change stream query
batchSize
number 1000 optional The number of documents to return per batch. See aggregation documentation.
collation
object optional Specify collation settings for operation. See aggregation documentation.
readPreference
ReadPreference optional The read preference. See read preference documentation.
startAtOperationTime
Timestamp optional receive change events that occur after the specified timestamp
session
ClientSession optional optional session to use for this operation
- Since:
- 3.1.0
Returns:
ChangeStream instance.
-
withSession(options, operation){Promise}
-
Runs a given operation with an implicitly created session. The lifetime of the session
will be handled without the need for user interaction.NOTE: presently the operation MUST return a Promise (either explicit or implicity as an async function)
Name Type Description options
Object optional Optional settings to be appled to implicitly created session
operation
function An operation to execute with an implicitly created session. The signature of this MUST be
(session) => {}
Type Definitions
-
connectCallback(error, client)
-
The callback format for results
Name Type Description error
MongoError An error instance representing the error during the execution.
client
MongoClient The connected client.