3

それも可能ですか?他にどのようにslaveDelay-Secondaryからデータを復元できますか?私が考えることができる唯一の方法は、レプリカセットの他のすべての実行中のメンバーをシャットダウンし、slaveDelay-Secondary dataフォルダーを他のメンバーにコピーして、レプリカセットを再起動することです。MongoDBのドキュメントに何も見つかりませんでした。たぶん私はここで重要な何かを見逃していて、解決策はあまりにも明白です。

4

2 に答える 2

4

いくつかのオプションがあります:

  • mongoexport / mongodumpを使用して、必要な場所にデータを手動で再挿入します(非推奨)
  • 優先度を微調整して、セカンダリをプライマリにします。(非推奨)
  • 関連ドキュメントページを読む(推奨)

基本的に:レプリカセットの他のすべてのメンバーをシャットダウンしてから、引用されたページに記載されている手順を適用する必要があります。

于 2011-11-21T15:43:44.863 に答える
0

スレーブを同期copy data filesさせるには、dbへの書き込みを停止するか、メソッドを試しmongodumpてみてmongorestoreください。このリンクを参照してください。

次の手順に従って、セカンダリレプリカを強制的にプライマリにすることができます。

Step 1: メンバーに接続して、現在の構成を確認します

rs.conf()

Step 2: 現在の構成を別の変数に保存します。

x = rs.conf()

Step 3: プライマリとして作成するメンバーのID、ホスト、およびポートを選択します。

x.members = [{"_ id":1、 "host": "localhost.localdomain:27071"}]

Step 4: それらを強制的に再構成します。

rs.reconfig(x、{force:true})

これで、目的のメンバーがプライマリとして昇格します。

于 2016-05-02T06:48:18.337 に答える