다음을 통해 공유


병합 구독자에 대한 파티션 정보 유효성 검사

병합 게시에 대한 매개 변수가 있는 행 필터를 정의할 때 구독자의 로그인 이름과 같은 구독자 정보를 참조하는 함수를 사용합니다. 기본적으로 복제는 각 동기화 전과 스냅샷이 구독자에 적용될 때마다 해당 함수를 기반으로 구독자 정보의 유효성을 검사합니다. 유효성 검사 프로세스는 각 구독자에 대해 데이터가 올바르게 분할되도록 합니다. 유효성 검사 동작은 sp_changemergepublication(Transact-SQL)를 사용하거나 게시 속성 대화 상자의 구독 옵션 페이지에서 변경할 수 있는 validate_subscriber_info게시 속성에 의해 제어됩니다. 게시 속성 변경에 대한 자세한 내용은 게시 속성 보기 및 수정을 참조하세요.

파티션 유효성 검사 작동 방식

예를 들어 SUSER_SNAME () 함수를 사용하여 게시를 필터링하면 병합 에이전트는 SUSER_SNAME() 식에 유효한 데이터를 기반으로 각 구독자에 초기 스냅샷을 적용합니다.

유효성 검사를 사용하도록 설정하면 구독자가 다음 동기화를 위해 게시자에 다시 연결할 때 병합 에이전트는 구독자에서 정보의 유효성을 검사하고 각 구독자의 파티션이 초기 스냅샷에서 받은 파티션과 동일한지 확인합니다. 각 후속 병합 또는 스냅샷 애플리케이션에 대해 병합 에이전트는 각 구독자의 파티션의 유효성을 검사합니다.

병합 에이전트가 필터링 식에 사용된 함수가 초기 스냅샷에서와 다른 값을 반환하는 것을 감지하면 병합 또는 스냅샷 애플리케이션이 실패하고 구독자의 구독에 다시 초기화가 필요할 수 있습니다. 구독자의 병합 설정이 변경될 경우 발생할 수 있는 문제를 방지하기 위해 다시 초기화가 필요할 수 있지만 로그인 이름과 같은 구독자의 정보를 원래 스냅샷 당시 사용된 값으로 변경하기에 충분할 수 있습니다.

병합 에이전트가 파티션의 유효성을 검사하는 경우 파티션을 필터링 식에 사용된 함수에서 반환된 값에 대해 유효성을 검사하는 것 외에도 에이전트는 메타데이터 정리 작업 또는 스키마 변경과 같이 스냅샷을 무효화하는 변경 전에 스냅샷이 생성되었는지 여부도 확인합니다. 분할된 스냅샷이 너무 오래된 경우 병합 에이전트는 오류를 반환하고 현재 일반 스냅샷을 기반으로 해당 구독자에 대해 분할된 스냅샷을 다시 생성해야 합니다.

또한 참조하십시오

복제 관리 FAQ
복제 관리에 대한 모범 사례
구독 다시 초기화
복제된 데이터 유효성 검사