mongoDB 手表() collection
mongoDB watch() collection
我正在尝试观察 collection 中的变化,但出现以下错误:
"MongoError: Majority read concern requested, but it is not supported by the storage engine."
答案好像是:"To use watch you need to use replica set which is not part of mLab".
但我有一个带副本集的付费计划。我与 mlab 的连接如下所示。
mongoose.connect('mongodb://<dbuser>:<dbpassword>@ds327925-a0.mlab.com:27925,ds327925-a1.mlab.com:27925/<dbname>?replicaSet=rs-ds327925');
const taskCollection = db.collection('tasks');
const changeStream = taskCollection.watch();
changeStream.on('change', (change) => {
});
大多数阅读关注requires WiredTiger storage engine。
显然,在 mlab 中 WiredTiger 的可用性是 limited to "dedicated" plans。
除了升级您的计划,您还可以考虑迁移到 MongoDB Atlas。
在 MongoDB 4.2+ 中更改流 do not require majority read concern,但我不认为 4.2 在 mlab 中可用。
我正在尝试观察 collection 中的变化,但出现以下错误: "MongoError: Majority read concern requested, but it is not supported by the storage engine."
答案好像是:"To use watch you need to use replica set which is not part of mLab".
但我有一个带副本集的付费计划。我与 mlab 的连接如下所示。
mongoose.connect('mongodb://<dbuser>:<dbpassword>@ds327925-a0.mlab.com:27925,ds327925-a1.mlab.com:27925/<dbname>?replicaSet=rs-ds327925');
const taskCollection = db.collection('tasks');
const changeStream = taskCollection.watch();
changeStream.on('change', (change) => {
});
大多数阅读关注requires WiredTiger storage engine。
显然,在 mlab 中 WiredTiger 的可用性是 limited to "dedicated" plans。
除了升级您的计划,您还可以考虑迁移到 MongoDB Atlas。
在 MongoDB 4.2+ 中更改流 do not require majority read concern,但我不认为 4.2 在 mlab 中可用。