문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

replSetSyncFrom

이 페이지의 내용

  • 설명
  • 구문
  • 명령 필드
  • 행동
replSetSyncFrom

현재 mongod 에 대한 기본 동기화 대상을 일시적으로 재정의합니다. 이 작업은 다양한 패턴을 테스트하거나 세트 멤버가 원하는 호스트에서 복제되지 않는 상황에 유용합니다.

mongosh 에서 이 명령은 rs.syncFrom() 헬퍼 메서드를 통해서도 실행할 수 있습니다.

헬퍼 메서드는 mongosh 사용자에게 편리하지만 데이터베이스 명령과 동일한 수준의 정보를 반환하지 않을 수 있습니다. 편의가 필요하지 않거나 추가 반환 필드가 필요한 경우 database 명령을 사용합니다.

admin 데이터베이스에서 replSetSyncFrom 를 실행합니다.

명령은 다음과 같은 구문을 가집니다:

db.adminCommand(
{
replSetSyncFrom: "hostname<:port>"
}
)

이 명령은 다음 필드를 사용합니다.

필드
유형
설명
replSetSyncFrom
문자열

이 멤버가 복제해야 하는 복제본 세트 멤버의 이름 및 포트 번호입니다. [hostname]:[port] 형식을 사용합니다.

1 vote 이 있는 복제본 세트 멤버는 0 votes 이 있는 멤버와 동기화할 수 없습니다.

replSetSyncFrom 를 실행할 때 초기 동기화 작업이 진행 중인 경우, replSetSyncFrom 는 진행 중인 초기 동기화를 중지하고 새 대상과의 동기화 프로세스를 다시 시작합니다.

필요한 경우에만 기본 동기화 로직을 수정하고 항상 주의를 기울입니다.

동기화할 멤버는 세트의 데이터에 대한 유효한 소스여야 합니다. 구성원으로부터 동기화하려면 해당 구성원은 다음을 충족해야 합니다.

  • 데이터가 있습니다. 중재자가 될 수 없으며, 시작 또는 복구 모드 상태가 아니고, 데이터 쿼리에 응답할 수 있어야 합니다.

  • 접근이 가능해야 합니다.

  • 복제본 세트 구성에서 동일한 세트의 멤버여야 합니다.

  • members[n].buildIndexes 설정으로 인덱스를 빌드합니다.

  • 자체 동기화를 방지하기 위해 세트의 다른 구성원이어야 합니다.

현재 구성원보다 10초 이상 뒤처진 멤버로부터 복제를 시도하는 경우 mongod는 경고를 기록하지만 여전히 뒤처진 구성원으로부터 복제를 수행합니다. 복제 지연 및 흐름 제어를 참조하세요.

replSetSyncFrom 기본 동작의 임시 재정의를 제공합니다. mongod 는 다음과 같은 상황에서 기본 동기화 동작으로 되돌아갑니다.

  • mongod 인스턴스가 다시 시작됩니다.

  • mongod와 동기화 대상 간의 연결이 닫힙니다.

  • 동기화 대상이 복제본 세트의 다른 구성원보다 30초 이상 뒤처지는 경우.

replSetSyncFrom 사용에 대한 자세한 내용은 세컨더리의 동기화 대상 구성을 참조하세요.

← replSetStepDown

이 페이지의 내용