sp_publication_validation(Transact-SQL)

적용 대상:SQL ServerAzure SQL Managed Instance

지정된 게시에서 각 아티클에 대한 아티클 유효성 검사 요청을 시작합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

Transact-SQL 구문 표기 규칙

구문

  
sp_publication_validation [ @publication = ] 'publication'  
    [ , [ @rowcount_only = ] type_of_check_requested ]  
    [ , [ @full_or_fast = ] full_or_fast ]  
    [ , [ @shutdown_agent = ] shutdown_agent ]  
    [ , [ @publisher = ] 'publisher' ]  

인수

[ @publication = ] 'publication' 게시의 이름입니다. 게시는 sysname이며 기본값은 없습니다.

[ @rowcount_only = ] 'rowcount_only' 테이블의 행 수만 반환할지 여부입니다. rowcount_only smallint이며 다음 값 중 하나일 수 있습니다.

설명
0 SQL Server 7.0 호환 검사sum을 수행합니다.

참고: 아티클을 가로로 필터링하면 검사sum 작업 대신 행 수 연산이 수행됩니다.
1 (기본값) 행 개수 검사만 수행합니다.
2 행 수 및 이진 검사sum을 수행합니다.

참고: SQL Server 버전 7.0 구독자의 경우 행 개수 유효성 검사만 수행됩니다.

[ @full_or_fast = ] 'full_or_fast' 행 개수를 계산하는 데 사용되는 메서드입니다. full_or_fast tinyint이며 다음 값 중 하나일 수 있습니다.

설명
0 COUNT(*)를 사용하여 전체 개수를 계산합니다.
1 sysindexes.rows에서 빠른 개수를 수행합니다. sys.sysindexes의 행 수를 계산하는 것은 실제 테이블의 행을 계산하는 것보다 훨씬 빠릅니다. 그러나 sys.sysindexes 가 지연 업데이트되므로 행 수는 정확하지 않을 수 있습니다.
2 (기본값) 먼저 빠른 방법을 시도함으로써 조건부로 빠른 계산 방법을 수행합니다. 빠른 메서드에 차이점이 표시되면 전체 메서드로 되돌리기. expected_rowcount NULL이고 저장 프로시저를 사용하여 값을 가져오는 경우 항상 전체 COUNT(*)가 사용됩니다.

[ @shutdown_agent = ] 'shutdown_agent'유효성 검사가 완료된 즉시 배포 에이전트 종료해야 하는지 여부입니다. shutdown_agent 비트이며 기본값은 0입니다. 0이면 복제본(replica) 에이전트가 종료되지 않습니다. 1이면 마지막 아티클의 유효성을 검사한 후 복제본(replica) 에이전트가 종료됩니다.

[ @publisher = ] 'publisher' SQL Server 이외 게시자를 지정합니다. 게시자는 sysname이며 기본값은 NULL입니다.

참고 항목

SQL Server 게시자에 대한 유효성 검사를 요청할 때는 게시 자를 사용하면 안 됩니다.

반환 코드 값

0 (성공) 또는 1 (실패)

설명

sp_publication_validation 트랜잭션 복제본(replica) 사용됩니다.

게시와 연결된 아티클이 활성화된 후 언제든지 sp_publication_validation 호출할 수 있습니다. 이 프로시저는 수동으로(한 번) 실행하거나 데이터의 유효성을 검사하는 정기적으로 예약된 작업의 일부로 실행할 수 있습니다.

애플리케이션에 즉시 업데이트 구독자가 있는 경우 sp_publication_validation 가짜 오류를 검색할 수 있습니다. sp_publication_validation 먼저 게시자에서 행 개수 또는 검사을 계산한 다음 구독자에서 계산합니다. 즉시 업데이트 트리거는 게시자에서 행 개수 또는 검사sum이 완료된 후 구독자에서 업데이트를 게시자에게 전파할 수 있지만 구독자에서 행 개수 또는 검사sum이 완료되기 전에 값이 변경될 수 있습니다. 게시의 유효성을 검사하는 동안 구독자 및 게시자의 값이 변경되지 않도록 하려면 유효성 검사 중에 게시자에서 MS DTC(Microsoft Distributed Transaction Coordinator) 서비스를 중지합니다.

사용 권한

sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만 sp_publication_validation 실행할 수 있습니다.

참고 항목

구독자에서 데이터 유효성 검사
sp_article_validation(Transact-SQL)
sp_table_validation(Transact-SQL)
시스템 저장 프로시저(Transact-SQL)