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

更改事件

本页内容

  • 操作类型
  • 恢复令牌
  • 扩展事件

更改流监视集合、数据库或部署以进行更改。

当监视的资源发生更改时,更改流返回一个更改事件通知文档,其中包含有关操作及其所做的更改的信息。

事件
描述
创建

在创建集合时发生。

需要您将showExpandedEvents 选项设置为 true

版本6.0.

在集合上创建索引时发生。

需要您将 showExpandedEvents 选项设置为 true

版本6.0.

当从集合中删除文档时发生。
当从数据库中删除集合时发生。
当删除数据库时发生。

当从集合中删除索引时发生。

需要您将 showExpandedEvents 选项设置为 true

版本6.0.

当操作向集合中添加文档时发生。
当操作使更改流无效时发生。

当修改集合时发生。

需要您将 showExpandedEvents 选项设置为 true

版本6.0.

当修改分片键时发生。

版本6.1.

当重命名集合时发生。
当更新操作从一个集合中删除文档并用新文档替换时发生。

当集合的分片键和数据分布发生变化时发生。

需要您将 showExpandedEvents 选项设置为 true

版本6.1: (也适用于6.0.14)

当集合进行分片时发生。

需要您将 showExpandedEvents 选项设置为 true

版本6.0.

当操作更新集合中的文档时发生。

每个更改事件都包含一个包含文档的 _id 字段。此文档可以用作启动更改流时的恢复令牌

版本6.0.

从MongoDB 6.0版本开始,更改流支持DDL事件(如创建索引删除索引事件)的更改通知。要在一个更改流中包含扩展事件,请使用showExpandedEvents选项创建更改流游标。

例如

let cur = db.names.aggregate( [ {
$changeStream: {
showExpandedEvents: true
}
}
] )
cur.next()

返回

生产建议