問題タブ [mongodb-replica-set]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
19084 参照

mongodb - mongodbでレプリカセットをシャットダウンするには?

Ubuntuを使用しています。

次のように 3 つの mongod レプリカ セットを開始します。

どうすればそれらをシャットダウンできますか?

0 投票する
3 に答える
23116 参照

mongodb - errmsg" : "レプリカ セット rs0 の新しい構成 1 に記述されているホストがこのノードにマップされていません"、なぜこのメッセージが表示されるのですか?

毎回このメッセージが表示されますrs.initiate()

レプリカ セット rs0 の新しい構成 1 に記述されているホストがこのノードにマップされていません

これは、私の/etc/hosts/ファイルが両方のレプリカ セット サーバーでどのように見えるかです。

サーバー 1 およびサーバー 2 の「hosts」ファイル

127.0.0.1 ローカルホスト
aa.bb.cc.dd DataMongo1
ee.ff.gg.hh DataMongo2

サーバー 1-mongod.conf ファイル

bind-ip aa.bb.cc.dd

サーバー 2 -mongod.conf ファイル

bind-ip ee.ff.gg.hh

server1 のホスト名を DataMongo1 に、server2 を DataMongo2 に変更しました

$ホスト名 DataMongo1

ポート 27071 は両方のサーバーでコメント解除されています

ReplicaSet構成ファイル:

cfg= {
_id:"rs0",
members:[{_id:0,host:"DataMongo1:27071"},{_id:1,host:"DataMongo2:27071"}]}

この問題で私を助けてください。

0 投票する
0 に答える
198 参照

mongodb - MongoDB - 大容量データのアーカイブと Oplog サイズ

大規模なコレクションの定期的なデータ アーカイブを依頼しています。要件のいくつかの点が私からいくつかの懸念を引き起こしています:

  1. アーカイブされたデータは、本番環境と同等のアプリケーション アクセスのために別のデータベースに移動する必要があります。
  2. バックアップの頻度は、毎月、毎年、またはそれ以下にすることもできます。
  3. 実稼働システムの可用性とパフォーマンスを中断することなく、アーカイブを実行する必要があります。

この要件は、アーカイブが実行されている短い時間枠での大容量の挿入と削除を意味します。対処すべき課題がいくつかあります。

  1. 同じレコードの場合、削除は挿入が成功した後にのみ発生し、発生する必要があります。
  2. 大量の挿入と削除は、レプリケーションがレプリカセットのセカンダリ ノードに完了する前に oplog を吹き飛ばす可能性があります。結局のところ、oplog のサイズは通常、日常的な操作用に設定されます。

課題 1 については、Mitch Pronschinske がここで非常に近い解決策を提案しています。Mitch のアーカイブ機能は、削除が挿入の成功後にのみ発生する可能性があるが、「発生する必要がある」部分では発生しないという問題に対処しています。それにもかかわらず、これは非常に近いものであり、このスクリプトの上に「発生する必要がある」部分に対処することが可能です。

私に頭痛を引き起こすのはチャレンジ2です。MongoDB の指示によると、oplog のサイズを変更するには、ダウンタイムと手動の介入が必要です。要件 3 を考慮すると、これはオプションではありません。

これをどのように達成できるかについて、誰か経験やアドバイスがありますか? ありがとう!

私の環境情報:

  • モンゴDB 3.2
  • シャード3個
  • レプリカセット: 3 つのデータ メンバー、1 つのメンバーは優先度 0 で地理的に冗長です。
  • OS:MS Win2012R2
0 投票する
1 に答える
1027 参照

mongodb - Mongo レプリカ セットの構成

3 ノードのレプリカ セットを構成し、仮想メモリの制限を超えたときに mongo をアンインストールしました。その後、mongo のレプリケーションを開始していたときに、これらのコマンドを実行できませんでした。

私の以前のレプリカセットはprimary(27017)secondary(27018,27019) 再インストール後、セカンダリを機能させることができましたが、プライマリは言っています

レプリカ セット conf が見つかりませんでした。

実際に何が起こったのかわかりません。いくつかのファイルを見逃しているか、mongo がそれについてもっと知りたがっています。早急にアドバイスをお願いします。

0 投票する
1 に答える
73 参照

mongodb - mongodb レプリカ セットは問題ありませんが、複製されません

mongodb レプリカセットを作成しましたが、リモート ホストでレプリケートされないことを除いてすべて正しいですが、ポート 27017 でリモート PC にアクセスしようとしましたが、正常に動作しています。リモート PC にデータベースを作成して、これが解決したかどうかを確認しましたが、何もありませんでした。新しいレコードも挿入しましたが、何もありませんでした。何かアイデアはありますか?

rs.status()

rs.conf

0 投票する
1 に答える
1025 参照

mongodb - mongo レプリカ セットの特定のノードからデータを読み取る

私は 3 つのメンバーのレプリカ セットを持っています。2 つのセカンダリ ノードのいずれかから読み取りたいだけということは可能ですか? IP がセカンダリの 1 つである次のコードを使用しますが、トラフィックが他のノードに展開されていることがわかりました。

0 投票する
1 に答える
3960 参照

mongodb - MongoDB シャード クラスターに接続する方法

このようなクラスターをawsにセットアップします

接続文字列 URI を介して接続したい。

現在、接続文字列は次のようになっています。

しかし、何らかの理由で、接続しようとするとエラーに到達できません。

ただし、単一のシャードに問題なく接続できます。

クラスタ全体への接続を妨げている原因は何ですか?

0 投票する
1 に答える
1864 参照

mongodb - MongoClientURI接続文字列にReplicaSet名が必要ですか?

Java アプリケーションから MongoDB レプリカ セットに接続するためのクライアント URI を指定するときに、MongoDB 接続文字列のreplicaSetオプションの使用/必要性について混乱しています。

レプリカ セットを構成する MongoDB の 3 つのノード インスタンスが実行されており、それぞれが同じレプリカ セットのメンバーとして指定されています。Java アプリケーションからレプリカ セットに接続したいと考えています。2 つ以上のホスト名のリストを提供するときに、接続文字列でレプリカ セット名を指定する必要さえある場合、私が読んだドキュメントから混乱しています。

3 ノードの MongoDB インスタンスを開始する方法は次のとおりです。

  1. Server1$: mongod --replSet " rs0 "
  2. Server2$: mongod --replSet " rs0 "
  3. Server3$: mongod --replSet " rs0 "

その後、交渉が行われ、プライマリが選出され、残りがセカンダリとしてマークされると仮定します。

次に、Java アプリケーションから MongoClient 呼び出しを介してレプリカ セットに接続します。実際のレプリカ セット名も必要ですか? また、レプリカ セットの各メンバーを一覧表示する必要がありますか?それとも、MongoDB ドライバーがレプリカ セットの 1 つのメンバーだけで残りを判断する必要がありますか?

replicaSet オプションは必要ですか?