>  기사  >  백엔드 개발  >  내 MongoDB Go 드라이버가 \'\'majority\' Found\'라는 쓰기 문제 모드 없음\'을 반환하는 이유는 무엇입니까?

내 MongoDB Go 드라이버가 \'\'majority\' Found\'라는 쓰기 문제 모드 없음\'을 반환하는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-26 05:05:11885검색

Why Does My MongoDB Go Driver Return

MongoDB의 "No Write Concern Mode Named 'majority' Found" 오류

문제:

삽입을 시도할 때 MongoDB Go 드라이버를 사용하여 POST 요청을 통해 MongoDB에 객체를 추가하는 경우 사용자는 다음과 같은 상황을 겪을 수 있습니다. 오류:

multiple write errors: [{write errors: []}, {(UnknownReplWriteConcern) No write concern mode named 'majority' found in replica set configuration}]

원인:

이 오류는 연결 문자열(이 경우 'majority')에 지정된 쓰기 관련 모드가 인식되지 않음을 나타냅니다. MongoDB 복제본 set.

해결책:

이 오류를 해결하려면 연결 문자열에서 &w=majority 매개변수를 제거하세요. 수정된 연결 문자열은 다음과 같아야 합니다.

mongodb+srv://user:[email protected]/DBname?retryWrites=true

설명:

쓰기 문제는 MongoDB가 쓰기 작업(예: 삽입, 업데이트)을 처리하는 방법을 지정합니다. majority 옵션을 사용하려면 복제 세트 구성원의 대다수가 쓰기 작업을 성공으로 간주하기 전에 이를 승인해야 합니다. 그러나 복제본 세트가 다수의 쓰기 문제를 지원하도록 구성되지 않은 경우 작업이 실패합니다.

연결 문자열에서 &w=majority 매개변수를 제거하면 MongoDB가 대부분의 복제본 세트 구성원의 승인이 필요하지 않은 기본 쓰기 문제를 사용하십시오. 이렇게 하면 모든 구성원이 이를 승인하지 않은 경우에도 쓰기 작업이 성공할 수 있습니다.

추가 세부 정보:

  • 쓰기 관련 모드를 매개변수로 지정할 수 있습니다. 연결 문자열(초기 예에서와 같이) 또는 mongo.Client 개체의 SetWriteConcern을 통해.
  • 복제 세트의 경우 쓰기 문제 모드는 복제본 세트 구성에서 지원되어야 합니다. 복제본 세트에 대한 쓰기 문제 구성에 대한 자세한 내용은 MongoDB 설명서를 참조하세요.
  • 인증되지 않은 클라이언트에 대한 기본 쓰기 문제는 대다수입니다. 인증된 클라이언트에는 승인됨이라는 기본 쓰기 문제가 있으며 이는 대다수보다 덜 엄격한 쓰기 문제 설정입니다.

위 내용은 내 MongoDB Go 드라이버가 \'\'majority\' Found\'라는 쓰기 문제 모드 없음\'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.