다음을 통해 공유


복제된 테이블 간 차이점 비교(복제 프로그래밍)

적용 대상: SQL Server Azure SQL Managed Instance

문서 유효성 검사는 게시자 및 구독자의 테이블 문서에 게시된 데이터가 동일하지 않은지 경정하는 데 사용되며 이는 비수렴성을 나타낼 수 있습니다. 자세한 내용은 복제된 데이터의 유효성 검사를 참조하세요. 그러나 유효성 검사는 통과 또는 실패 정보만 반환하며 원본 테이블과 대상 테이블 간의 차이점에 대한 정보를 제공하지 않습니다. tablediff 명령 프롬프트 유틸리티는 두 테이블 간의 자세한 차이점 정보를 반환하며, 구독을 게시자의 데이터와 수렴하도록 Transact-SQL 스크립트를 생성할 수도 있습니다.

참고 항목

tablediff 유틸리티는 SQL Server 서버에 대해서만 지원됩니다.

tablediff를 사용하여 복제된 테이블의 차이점을 비교하려면

  1. 복제 토폴로지에 있는 서버의 명령 프롬프트에서 tablediff Utility를 실행합니다. 다음 매개 변수를 지정합니다.

    • -sourceserver - 올바른 데이터가 있는 서버(대개 게시자)의 이름입니다.

    • -sourcedatabase - 올바른 데이터를 포함하는 데이터베이스의 이름입니다.

    • -sourcetable - 비교할 아티클의 원본 테이블 이름입니다.

    • -sourceschema (옵션) - 원본 테이블의 스키마 소유자입니다(기본 스키마가 아닌 경우).

    • (선택 사항) SQL Server 인증을 사용하여 게시자에 연결하는 경우 -sourceuser-sourcepassword 입니다.

      Important

      가능하면 Windows 인증을 사용하세요. SQL Server 인증을 사용해야 하는 경우 런타임에 보안 자격 증명을 입력하라는 메시지를 사용자에게 표시합니다. 스크립트 파일에 자격 증명을 저장하는 경우에는 무단으로 액세스하지 못하도록 파일에 보안을 설정해야 합니다.

    • -destinationserver - 데이터를 비교할 서버의 이름이며, 일반적으로 구독자입니다.

    • -destinationdatabase - 비교할 데이터베이스의 이름입니다.

    • -destinationtable - 비교할 테이블의 이름입니다.

    • (선택 사항) -destinationschema - 기본 스키마가 아닌 경우 대상 테이블의 스키마 소유자입니다.

    • (선택 사항) SQL Server 인증을 사용하여 구독자에 연결하는 경우 -destinationuser-destinationpassword입니다.

      Important

      가능하면 Windows 인증을 사용하세요. SQL Server 인증을 사용해야 하는 경우 런타임에 보안 자격 증명을 입력하라는 메시지를 사용자에게 표시합니다. 스크립트 파일에 자격 증명을 저장하는 경우에는 무단으로 액세스하지 못하도록 파일에 보안을 설정해야 합니다.

    • (선택 사항) -c를 사용하여 열 수준 비교를 수행합니다.

    • -q (옵션) - 행 개수 전용 및 스키마 전용 비교를 수행하려는 경우에 사용합니다.

    • (선택 사항) -o의 파일 이름과 경로를 지정하여 결과를 파일에 출력합니다.

    • (선택 사항) -et에 대한 결과를 삽입할 구독 데이터베이스의 테이블을 지정합니다. 테이블이 이미 있는 경우 -dt를 지정하여 먼저 테이블을 삭제합니다.

    • (선택 사항) -f 구독자의 데이터를 게시자의 데이터와 일치하게 수정하려면 이 매개 변수를 사용하여 파일을 생성합니다. -df를 사용하여 각 파일의 Transact-SQL 문 수를 지정합니다.

    • (선택 사항) -rc-ri를 사용하여 작업을 다시 시도할 횟수와 다시 시도 간격을 지정합니다.

    • (선택 사항) -strict를 사용하여 원본 테이블과 대상 테이블 간에 엄격한 스키마 비교를 적용합니다.

참고 항목

구독자에서 데이터 유효성 검사