文档菜单
文档首页
/
MongoDB 手册
/ / / /

changeStreamOptions

本页面

  • 定义
  • 语法
  • 参数字段
  • 行为
  • 示例
changeStreamOptions

新增版本6.0.

适用于两者mongodmongos.

包含更改流配置选项的对象。

您只能在 mongos 或副本集主节点上设置 changeStreamOptions。该值在集群范围内设置。

要为您部署设置 changeStreamOptions,请在 admin 数据库上运行以下命令

db.adminCommand( { setClusterParameter: { changeStreamOptions: <value> } } )

要查看集群参数 changeStreamOptions 的当前值,请在 admin 数据库上运行以下命令

db.adminCommand( { getClusterParameter: "changeStreamOptions" } )
changeStreamOptions.preAndPostImages.expireAfterSeconds

新增版本6.0.

默认值: 关闭

控制变更流的预图像和后图像的保留策略。预图像和后图像分别表示文档修改前后的版本。expireAfterSeconds 控制MongoDB保留预图像和后图像的时间。

expireAfterSeconds 设置为 off 时,MongoDB 使用默认的保留策略:预图像和后图像保留直到相应的变更流事件从 oplog 中删除。

要设置最小预图像和后图像保留时间,请为 expireAfterSeconds 指定一个整数值。

重要

使用变更流的服务,包括触发器设备同步,可能依赖于预图像数据的可用性。如果您将 expireAfterSeconds 设置得太低,可能会增加中断同步或触发器处理的风险。

当为预图像设置 expireAfterSeconds 时,请确保您

  • 指定一个不低于服务典型变更流延迟的值。

  • 添加缓冲时间以允许在冒着操作日志数据丢失的风险之前手动恢复服务。

如果更改流事件从操作日志中删除,则无论指定了多长时间的保留时间(使用changeStreamOptions.preAndPostImages.expireAfterSeconds),相应的预图像和后图像也将被删除。

以下示例将更改流中的预图像和后图像的保留时间设置为100

db.runCommand( {
setClusterParameter: {
changeStreamOptions: { preAndPostImages: { expireAfterSeconds: 100 } }
}
} )

返回

auditConfig