レプリカ セットがあり、スレーブ インスタンスへのスタンドアロンの読み取り専用接続を確立したいと考えています。
通常、問題なく実行できます。私がすべき唯一のことはslaveOk=true
、読み取り操作でクエリできるように設定することです。またはmongoコンソールを使用している場合nodejs
はうまく機能しますが、を使用してそれを行う方法が見つかりませんでしたmonger
。
set-db!
最も奇妙なことは、関数を呼び出しているときに例外が発生することです。
MongoException がマスターと通信せず、再試行が com.mongodb.DBTCPConnector.innerCall (DBTCPConnector.java:314) を使い果たしました
レプリカ セット接続を確立することは、私にとって選択肢ではありません。
現在、私は使用して[com.novemberain/monger "1.4.0"]
います。
ありがとう!
更新: Java MongoDB Driver API Documentationを調べて、メソッドを見つけましslaveOk
た。うまくいくことを期待して、次のコードを書きました。
(defn slave-connect!
[& args]
(mg/set-connection!
(doto (apply mg/connect args)
(.slaveOk))))
しかし、私が持っているのは新しい例外だけです:
MongoException マスターではない com.mongodb.CommandResult.getException (CommandResult.java:100)