問題:
挿入しようとしたときMongoDB Go ドライバーを使用して POST リクエスト経由でオブジェクトを MongoDB に追加すると、次のような問題が発生する可能性があります。エラー:
multiple write errors: [{write errors: []}, {(UnknownReplWriteConcern) No write concern mode named 'majority' found in replica set configuration}]
原因:
このエラーは、接続文字列で指定された書き込み懸念モード (この場合は「マジョリティ」) が認識されないことを示します。 MongoDB レプリカset.
解決策:
このエラーを解決するには、接続文字列から &w=majority パラメータを削除します。修正された接続文字列は次のようになります。
mongodb+srv://user:[email protected]/DBname?retryWrites=true
説明:
書き込み懸念は、MongoDB が書き込み操作 (挿入、更新など) をどのように処理するかを指定します。 majority オプションでは、書き込み操作が成功したとみなす前に、レプリカ セット メンバーの過半数が書き込み操作を承認する必要があります。ただし、レプリカ セットがマジョリティ書き込み懸念をサポートするように構成されていない場合、操作は失敗します。
接続文字列から &w=majority パラメータを削除することで、MongoDB が次のことを実行できるようになります。デフォルトの書き込み懸念を使用します。これは、レプリカ セット メンバーの大部分からの承認を必要としません。これにより、すべてのメンバーが書き込み操作を承認していない場合でも、書き込み操作が確実に成功します。
追加の詳細:
以上がMongoDB Go ドライバーが「「マジョリティ」という名前の書き込み懸念モードが見つかりません」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。