MongoDB 连接方法

2025年3月17日 | 阅读 3 分钟

MongoDB 连接方法包含所有用于启用和禁用数据库连接的方法。

#1. connect (url, user, password)

connect 方法用于建立与 MongoDB 对象的连接。该方法还会返回对数据库的引用。在某些情况下,我们可以使用 Mongo() 实例及其 getDB() 方法代替。

示例

以上查询将返回对 JTPDatabase 的引用,并实例化与在 localhost 接口上运行的 MongoDB 对象的新连接,并且

#2. Mongo(host, ClientSideFieldLevelEncryptionOptions)

mongo 是一个 JavaScript 构造函数,用于为属于 mongo shell 或 JavaScript 文件的数据库连接创建实例。

示例

将使用以下查询从 mongo shell 创建一个新的连接对象

为了与 mymongo.example.net:27017 集群进行交互,我们将针对该集群对象发出以下查询

#3. Mongo.getDB(<database>)

getDB 方法用于提供对属于 mongo shell 或 JavaScript 文件的数据库对象的访问。

示例

以上查询建立与在 localhost 接口上运行的 MongoDB 对象的新连接,并返回对 "JTPDatabase" 的引用

#4. Mongo.isCausalConsistency()

顾名思义,该方法用于返回一个布尔结果,指示是否在连接对象上启用了实例的因果一致性。

示例

以上查询确定是否在与 mongo shell 的全局数据库变量关联的 Mongo 连接对象上启用了因果一致性

#5. Mongo.setCausalConsistency(<boolean>)

setcasualconsistency() 方法启用或禁用指定连接对象上的因果一致性。 默认情况下,此方法会删除该对象的连接。

示例

以下查询启用与 mongo shell 的全局数据库变量关联的 MongoDB 实例上的因果一致性

如果要检查是否为连接启用了因果一致性。 可以使用 Mongo.isCausalConsistency() 方法。

#6. Mongo.setReadPref(mode, tagSet)

setReadPref 方法用于 Mongo 连接对象,以控制客户端路由对指定副本集中所有成员的查询的反应。

示例

以下示例中使用读取首选项模式来将读取操作定向到辅助成员。

对于特定标签,二级成员将包含标签集数组

#7. Mongo.startSession(<options>)

start session 方法用于为连接启动会话。 会话 ID 将分配给与 mongo shell 的会话关联的命令。

示例

要启动启用了可重试写入的会话,您必须使用以上查询,该查询将帮助您通过因果一致性启用它。

#8. Mongo.watch(pipeline, options)

watch 方法允许我们为指定的副本集或指定的分片集群打开一个已更改的流游标。 除了本地、config 和 admin 数据库之外,副本集将被更改为报告其特定 DB 上所有非系统集合的信息,。

示例

查询示例在 mongoShell 的副本集上打开一个变更流游标。 除了 admin、local 和 config 数据库之外,所有数据库都将通过返回的游标向所有非系统集合报告数据更改。

我们可以使用 cursor.isExhausted() 方法迭代游标以检查新事件,并确保循环仅在对流游标进行更改的情况下退出。

#9. Session()

session 方法在 mongo shell 中建立连接的会话对象。 使用 Mongo.startSession() 在 mongo shell 中建立连接的会话,

示例

将在与 mongo shell 的全局数据库变量关联的 Mongo 连接对象上启动会话。 之后,要检索与会话关联的数据库对象,它使用 Session.getDatabase() 方法。