MongoDB无法创建'更改流'(java)

问题描述 投票:0回答:2

我正试图从MongoDB获得实时更新。我使用了更改流API(来自here)。这是我的代码:

collection.watch().forEach(do_somthing);

但它只是抛出这个错误:

The $changeStream stage is only supported on replica sets

replica sets是什么意思?我该如何设法解决这个问题?

这是我第一次使用MongoDB ...

谢谢。

database mongodb observer-pattern
2个回答
1
投票

replica set是一组维护数据集的MongoDB进程。副本集通过创建名为oplog的特殊集合来复制数据,该集合记录对数据的所有修改。

通过读取oplog来更改流的工作,因此它们要求将部署配置为副本集。

有关部署副本集的指南,请参阅https://docs.mongodb.com/manual/tutorial/deploy-replica-set/


0
投票

对于简单的本地测试,您可以像这样运行您的mongodb

mongod --dbpath=d:\data --oplogSize 50 --replSet rs0
© www.soinside.com 2019 - 2024. All rights reserved.