我正在尝试使用卡斯巴的OPLOG监视类

https://github.com/mongodb/casbah/blob/master/casbah-core/src/main/scala/scala/util/oplog.scala

我想做的是在生产Mongo DB上监视OPLOG条目

 production.someserver.com

并获取条目并将其发送到存储DB处

 test.someotherserver.com

并将生产服务器中的所有数据复制到测试服务器。我无法使用副本集来执行此操作,因为我现在无法重新部署。我正在尝试构建一个Scala应用程序来做到这一点。卡斯巴(Casbah

val mongoColl = MongoConnection() ("test") ("test_data")
val oLog = new MongoOpLog(mongoColl)

但是我甚至无法实例化,因此找不到发现MongoopLog的错误。我进口了必要的软件包。但是,即使我能够做到这一点,我也不知道如何做我想做的事。任何人都可以将我指向如何实现这一目标的正确方向。我是Scala的新手,因此一些详细的解释或包含它的链接对我有帮助。

有帮助吗?

解决方案

您需要在服务器上启用复制,以创建OPLOG;作为副本集的成员,也可以是主模式的主/从属。

否则,MongoDB不会浪费CPU周期和磁盘空间来维持OPLOG。请参阅复制文档以获取更多信息 - http://www.mongodb.org/display/docs/replication

实际上,您永远都不应该在生产中使用单个服务器运行任何数据库。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top