Вопрос

Я пытаюсь использовать класс мониторинга Oplog в Casbah

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

Что я хочу сделать, так это контролировать записи Oplog в производственном монго Б.Б.

 production.someserver.com

и возьмите записи и отправьте их на хранилище

 test.someotherserver.com

и повторить все данные, которые находятся на производственном сервере на тестовый сервер. Я не могу использовать наборы реплик для этого, так как сейчас не могу переделывать. Я пытаюсь построить приложение Scala для этого. Casbah Официальный драйвер Scala для Mongo в качестве вышеупомянутого класса, который я пытаюсь создавать экземпляр, используя

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

Но я даже не могу создать его, получая ошибку, что MongoOplog не найден. Я импортировал необходимый пакет. Но даже если я могу это сделать, я понятия не имею, как делать то, что я хочу делать. Может ли кто -нибудь указать мне в правильном направлении на то, как это достичь. Я довольно новичок в Scala, поэтому немного подробного объяснения или ссылки, содержащей это, было бы полезно для меня.

Это было полезно?

Решение

Вам необходимо включить репликацию на сервере для создания Oplog; в качестве члена реплики набора или в мастер -режиме для мастера/раба.

В противном случае MongoDB не тратит циклы процессоров и дисковое пространство, поддерживающее Oplog. Пожалуйста, смотрите документацию по репликации для получения дополнительной информации - http://www.mongodb.org/display/docs/replication

Вы действительно не должны запускать какую -либо базу данных с одним сервером в производстве, кстати.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top