问题标签 [mongodb-oplog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1703 浏览

mongodb - 如何为数据库创建 mongodb oplog?

最近我从 MongoDB atlas 购买了集群帐户。我检查了 UI 和 MongoDB 文档,但不知道创建 oplog db。以及如何为 oplog 创建连接字符串?

0 投票
1 回答
154 浏览

node.js - Node.js 的多个 mongo-oplog 实例

我正在尝试读取并遍历包含不同 mongoURI 的配置文件,然后尝试使用 mongo-oplog 监视它们的活动。我真的不知道如何为所有这些数据库动态设置侦听器(例如更新、插入和删除)。关于我如何去做的任何想法?

0 投票
1 回答
334 浏览

meteor - Meteor oplog 拖尾和性能

Meteor 使用 oplog 拖尾有什么好处?我知道这些:

  • 拥有副本集可确保高可用性
  • 在检测数据库中的更改并将这些更改推送到客户端时,Oplog 拖尾提供了改进的性能

更具体地说,给定一个 Meteor 应用程序,其中“实时”方面并不那么重要(即没有足够密集的写入,客户端可能会在其会话期间看到任何数据更改)并且还忽略了拥有副本集的可用性优势,使用oplog拖尾还有其他好处吗?

0 投票
1 回答
317 浏览

node.js - socket + node + mongodb + oplog:连接到副本集

我有一个现有的工作节点 + mongodb + oplog 应用程序,它通过 socket.io 在 mongodb 更新时将事件推送到浏览器。当前的配置如下所示:

我最近开始使用一个实际的副本集,其中有一个主数据库机器和一个辅助数据库机器。如何在我的节点应用程序中更改 MongoOplog 的配置以适应对多节点副本集的更改?

0 投票
1 回答
88 浏览

node.js - MongoDB oplog 转换成 Mongoose 文档

我在 Mongoose 中使用类似于 Tim Oxley 的示例(https://gist.github.com/timoxley/1502645)的 oplog。
我正在寻找一种将新插入的文档(oplog 'i' 操作)转换为 Mongoose 文档的有效方法。
我试过这个:
var my_model = mongoose.model('test_doc', my_schema);
// ...
function oplog_receiver(op, doc) {
if( op === 'i' ) {
doc = new my_model(doc);
doc.isNew = 假;
}
// ...
doc.modified_at = new Date();
doc.save(err => {});
}

效果很好。
这是要走的路还是有更好的方法?

非常感谢,
罗马

0 投票
1 回答
321 浏览

mongodb - Meteor 中的 Oplog 拖尾 - 做还是不做?

我正在尝试协调这篇kadira.io文章,该文章说 oplog 拖尾是每个 Meteor 生产应用程序都必须使用这篇compose.io文章 - 请参阅“To Oplog or not Oplog”部分,它说您应该只在某些情况下使用 oplog。

基本上我有一个流星应用程序,它没有大量用户或大量连续写入收藏。

然而,它确实需要从数据库中读取大量数据,这似乎会减慢速度。

据我所知,它只在一台服务器上运行。

我想知道添加 oplog 拖尾会加快速度吗?

提前致谢。

0 投票
0 回答
122 浏览

mongodb - 为什么 mogodb 3.4.0 使用的 oplog 空间比配置文件中指定的多?

在我们的辅助数据库的配置文件中,我们定义了 99GB 的 oplog 大小(oplogSizeMB:99000),但几个小时后,我们已经遇到了超过 120 GB 的大小(1 个文件为 74 GB,第二个文件为 65 GB)。

这是版本 3.4.0 中的错误吗?我们在 mongodb 3.2.1 版本中没有遇到这个问题。还是我们对 oplog 的行为有误解?

我们在 SUSE Linux Enterprise Server 11 (x86_64) 上运行 mongodb。

0 投票
1 回答
288 浏览

replication - 尝试复制时无法使用默认 oplog 大小启动 mongod 服务器

当 oplog 具有默认值时,我无法创建复制,即 rs.initiate()。我的服务器有 400+ GB 的可用空间。在 MongoDB 的官方文档中,MMAP 的默认范围是 990MB 到 50GB 之间可用磁盘空间的 5%,但Memory Use下:-

使用 MMAPv1,MongoDB 会自动使用机器上的所有空闲内存作为其缓存。

在没有 oplog 大小选项的情况下启动 mongod 后执行 rs.initiate() 时控制台出错:

mmap 因内存不足而失败

“errmsg”:“无法启动:文件 /data/0/local.7 在 createPrivateMap 中打开/创建失败(查看日志以获取更多信息)”

所以,我只用 --oplogSize 4096 开始了 mongod,之后我才能够执行 rs.initiate。现在我知道小 oplog 大小的问题,但我想知道后台到底发生了什么。5% 的可用磁盘空间或 50 GB 上限,无论哪种方式,我的服务器中仍有 300 GB 可用。

0 投票
0 回答
66 浏览

mongodb - Oplog实施后Mongo服务未重启

我在 mongod.conf 文件中添加了以下代码以实现 oplog

在此之后我重新启动 mongod 服务,但错误即将到来。

0 投票
1 回答
429 浏览

performance - `oplog` 对流星应用的影响

我在我们的服务器上实现了 oplog,那时我们的应用程序响应时间得到了改善,但几个小时后响应时间增加了,应用程序响应非常慢。

你能告诉我

Oplog的缺点

Oplog 对 Meteor 应用的影响

实施 oplog 时需要注意什么。

请帮我浏览几个视频和链接,但找不到任何满意的答案,谢谢。