sp_publication_validation(Transact-SQL)
적용 대상: SQL Server Azure SQL Managed Instance
지정된 게시에서 각 아티클에 대한 아티클 유효성 검사 요청을 시작합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.
구문
sp_publication_validation
[ @publication = ] N'publication'
[ , [ @rowcount_only = ] rowcount_only ]
[ , [ @full_or_fast = ] full_or_fast ]
[ , [ @shutdown_agent = ] shutdown_agent ]
[ , [ @publisher = ] N'publisher' ]
[ ; ]
인수
[ @publication = ] N'publication'
게시의 이름 @publication 기본값이 없는 sysname입니다.
[ @rowcount_only = ] rowcount_only
테이블의 행 수만 반환할지 여부를 지정합니다. @rowcount_only smallint이며 다음 값 중 하나일 수 있습니다.
값 | 설명 |
---|---|
0 |
SQL Server 7.0 호환 체크섬을 수행합니다. 참고: 아티클을 가로로 필터링하면 체크섬 작업 대신 행 수 작업이 수행됩니다. |
1 (기본값) |
행 개수 검사만 수행합니다. |
2 |
행 수 및 이진 체크섬을 수행합니다. |
[ @full_or_fast = ] full_or_fast
행 개수를 계산하는 데 사용되는 메서드입니다. @full_or_fast tinyint이며 다음 값 중 하나일 수 있습니다.
값 | 설명 |
---|---|
0 |
를 사용하여 전체 개수를 수행 COUNT(*) 합니다. |
1 |
에서 sysindexes.rows 빠른 개수를 수행합니다. sys.sysindexes의 행 개수를 계산하는 것은 실제 테이블의 행을 계산하는 것보다 빠릅니다. 그러나 sys.sysindexes 가 지연 업데이트되므로 행 수는 정확하지 않을 수 있습니다. |
2 (기본값) |
먼저 빠른 방법을 시도함으로써 조건부로 빠른 계산 방법을 수행합니다. 빠른 메서드에 차이점이 표시되면 전체 메서드로 되돌려 줍니다. 값이 NULL 있는 경우 저장 프로시저를 사용하여 값을 가져오는 경우 expected_rowcount 항상 전체 COUNT(*) 가 사용됩니다. |
[ @shutdown_agent = ] shutdown_agent
유효성 검사가 완료된 즉시 배포 에이전트 종료해야 하는지 여부를 지정합니다. @shutdown_agent 비트이며 기본값은 .입니다0
.
- 이 경우
0
복제 에이전트가 종료되지 않습니다. - 이 경우
1
마지막 아티클의 유효성을 검사한 후 복제 에이전트가 종료됩니다.
[ @publisher = ] N'publisher'
SQL Server 이외 게시자를 지정합니다. @publisher sysname이며 기본값은 .입니다NULL
.
@PUBLISHER SQL Server 게시자에서 유효성 검사를 요청할 때 사용하면 안 됩니다.
반환 코드 값
0
(성공) 또는 1
(실패).
설명
sp_publication_validation
는 트랜잭션 복제에 사용됩니다.
sp_publication_validation
는 게시와 연결된 아티클이 활성화된 후 언제든지 호출할 수 있습니다. 이 프로시저는 수동으로(한 번) 실행하거나 데이터의 유효성을 검사하는 정기적으로 예약된 작업의 일부로 실행할 수 있습니다.
애플리케이션에 즉시 업데이트 구독자가 있는 sp_publication_validation
경우 가짜 오류를 검색할 수 있습니다. sp_publication_validation
먼저 게시자에서 행 개수 또는 체크섬을 계산한 다음 구독자에서 계산합니다. 즉시 업데이트 트리거는 게시자에서 행 개수 또는 체크섬이 완료된 후 구독자에서 게시자에게 업데이트를 전파할 수 있지만 구독자에서 행 개수 또는 체크섬이 완료되기 전에 값이 변경될 수 있습니다. 게시의 유효성을 검사하는 동안 구독자 및 게시자의 값이 변경되지 않도록 하려면 유효성 검사 중에 게시자에서 MS DTC(Microsoft Distributed Transaction Coordinator) 서비스를 중지합니다.
사용 권한
sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만 실행할 sp_publication_validation
수 있습니다.