Docs 菜单
Docs 主页
/
MongoDB Manual
/ / /

Mongo.startSession()

在此页面上

  • 定义
  • 兼容性
  • 示例
Mongo.startSession(<options>)

为连接启动会话 mongosh将会话ID分配给与会话关联的命令。

重要

mongosh 方法

本页面提供 mongosh 方法的相关信息。这不是数据库命令或特定语言驱动程序(例如 Node.js)的相关文档。

有关数据库命令,请参阅 startSession 命令。

如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

会话只能与创建会话的 MongoClient 对象一起使用。单个会话不能同时使用。使用单个会话的操作必须按顺序运行。

startSession() 方法可以利用会话选项获取文档。可用的选项有:

字段
说明
因果一致性(Causal Consistency)

布尔值。 启用或禁用会话的因果一致性Mongo.startSession()默认启用causalConsistency 。 与snapshot互斥。

启动会话后,无法修改其 causalConsistency 设置。

即使 Mongo() 连接对象禁用了因果一致性,会话仍可能启用了因果一致性,反之亦然。要设置连接对象的因果一致性,请参见 Mongo.setCausalConsistency()

事务外的

文档。指定读关注

要在启动会话后修改设置,请参阅 Session.getOptions().setReadConcern()

readPreference

文档。指定读取偏好

readPreference 文档包含 mode 字段和可选的 tags 字段:

{ mode: <string>, tags: <array> }

要在启动会话后修改设置,请参阅 Session.getOptions().setReadPreference()

retryWrites

布尔值。启用或禁用遇到瞬时网络错误时重试写入的功能。

如果使用 选项启动mongosh --retryWrites,则默认为retryWrites Mongo.startSession()启用 。

启动会话后,无法修改其 retryWrites 设置。

snapshot
布尔值。 为MongoDB 5.0 + 部署启用会话快照读取。 与causalConsistency互斥。
writeConcern

文档。指定写关注

要在启动会话后修改设置,请参阅 Session.getOptions().setWriteConcern()

此方法可用于以下环境中托管的部署:

  • MongoDB Atlas:用于云中 MongoDB 部署的完全托管服务

注意

所有MongoDB Atlas集群都支持此命令。有关Atlas支持所有命令的信息,请参阅不支持的命令。

以下示例在与Mongo() mongosh的全局db 变量关联的 连接对象上启动一个具有因果一致性和可重试写入功能的会话:

db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());

后退

Mongo.setReadPref

在此页面上