replSetMaintenance
정의
replSetMaintenance
관리
replSetMaintenance
명령은 복제본 세트 의 세컨더리 멤버에 대한 유지 관리 모드를 활성화하거나 비활성화합니다.
호환성
이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
중요
이 명령은 M0, M2, M5 및 M10클러스터 이상에서 지원되지 않습니다. 자세한 내용은 지원되지 않는 명령을 참조하세요.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
명령은 다음과 같은 구문을 가집니다:
db.runCommand( { replSetMaintenance: <boolean> } )
행동
replSetMaintenance
명령을 실행할 때 다음 동작을 고려하세요.
프라이머리에서는 명령을 실행할 수 없습니다.
admin
데이터베이스에 대해 명령을 실행해야 합니다.replSetMaintenance: true
을 활성화하면 멤버는RECOVERING
상태가 됩니다. 세컨더리는RECOVERING
인 반면,읽기 작업을 위해 멤버에 액세스할 수 없습니다.
멤버는 프라이머리에서 해당 oplog 를 계속 동기화합니다.
노드가
replSetMaintenance: true
요청을 받으면 유지 관리 모드 작업을 작업 대기열에 추가합니다. 작업 대기열이 비어 있었지만 현재 비어 있지 않은 경우 노드는RECOVERING
상태로 전환되고 읽기 요청을 거부하기 시작합니다. 노드가replSetMaintenance: false
요청을 받으면 대기열에서 유지 관리 모드 작업을 제거합니다(해당 작업이 다른 클라이언트에 의해 시작된 경우에도). 요청이 유지 관리 모드 작업 대기열을 비우면 노드는SECONDARY
상태로 돌아갑니다.노드가 읽기를 제공하지 못하게 하려면 숨겨진 복제본 세트 멤버 를 대신 사용하는 것이 좋습니다.