本番環境でこの問題が発生しました。 @maganap さん (3 月 15 日) のコメントでベーコンが救われました!
mongodb 3.2.10 を使用すると、oplog をダンプする必要はありません。最初のメンバーでこれを行うだけです:
use local
db.system.replset.remove({})
その後、メンバーを再始動します。これで、まだ oplog とデータが保持されます。実行してください:
rs.initiate()
rs.reconfig(conf)
conf は新しい conf です。次に、他の各メンバーで、上記の replset データの破棄を実行して、再起動します。彼らが始まると、彼らはセットに参加します。
それはすべて、あなたの目標が何であるかによって異なります。既存の mongod
を再利用したい場合 レプリカ セットのメンバーではなくスタンドアロン サーバーとしての場合、その手順は次のようになります:
--replSet
なしで mongod プロセスを再起動します 引数。ローカル データベースを削除します:
use local;
db.dropDatabase();