sp_resyncmergesubscription(Transact-SQL)
적용 대상: SQL Server
병합 구독을 지정한 알려진 유효성 검사 상태로 다시 동기화합니다. 유효성 검사에 성공한 마지막 시간 또는 지정된 날짜와 같은 특정 시점으로 구독 데이터베이스를 강제로 수렴하거나 동기화할 수 있습니다. 이 메서드를 사용하여 구독을 다시 동기화할 때 스냅샷은 다시 적용되지 않습니다. 이 저장 프로시저는 스냅샷 복제 구독 또는 트랜잭션 복제 구독에 사용되지 않습니다. 이 저장 프로시저는 게시자, 게시 데이터베이스 또는 구독 데이터베이스의 구독자에서 실행됩니다.
구문
sp_resyncmergesubscription
[ [ @publisher = ] N'publisher' ]
[ , [ @publisher_db = ] N'publisher_db' ]
, [ @publication = ] N'publication'
[ , [ @subscriber = ] N'subscriber' ]
[ , [ @subscriber_db = ] N'subscriber_db' ]
, [ @resync_type = ] resync_type
[ , [ @resync_date_str = ] N'resync_date_str' ]
[ ; ]
인수
[ @publisher = ] N'publisher'
게시자의 이름입니다. @publisher sysname이며 기본값은 .입니다NULL
. NULL
값은 저장 프로시저가 게시자에서 실행되는 경우 유효합니다. 저장 프로시저가 구독자에서 실행되는 경우 게시자를 지정해야 합니다.
[ @publisher_db = ] N'publisher_db'
게시 데이터베이스의 이름입니다. @publisher_db sysname이며 기본값은 .입니다NULL
. 저장 프로시저가 게시 데이터베이스의 NULL
게시자에서 실행되는 경우 값이 유효합니다. 저장 프로시저가 구독자에서 실행되는 경우 게시자를 지정해야 합니다.
[ @publication = ] N'publication'
게시의 이름 @publication 기본값이 없는 sysname입니다.
[ @subscriber = ] N'subscriber'
구독자의 이름입니다. @subscriber sysname이며 기본값은 .입니다NULL
. 값 NULL
은 저장 프로시저가 구독자에서 실행되는 경우 유효합니다. 게시자에서 저장 프로시저를 실행하는 경우 구독자를 지정해야 합니다.
[ @subscriber_db = ] N'subscriber_db'
구독 데이터베이스의 이름입니다. @subscriber_db sysname이며 기본값은 .입니다NULL
. 값 NULL
은 저장 프로시저가 구독 데이터베이스의 구독자에서 실행되는 경우 유효합니다. 게시자에서 저장 프로시저를 실행하는 경우 구독자를 지정해야 합니다.
[ @resync_type = ] resync_type
다시 동기화를 시작해야 하는 시기를 정의합니다. @resync_type int이며 다음 값 중 하나일 수 있습니다.
값 | 설명 |
---|---|
0 |
동기화는 초기 스냅샷 이후부터 시작됩니다. 초기 스냅샷 이후의 모든 변경 내용이 구독자에 다시 적용되기 때문에 이 옵션은 리소스를 많이 사용하는 옵션입니다. |
1 |
동기화는 마지막으로 성공한 유효성 검사 이후 시작됩니다. 마지막으로 성공한 유효성 검사 이후에 시작된 모든 새로운 또는 완료되지 않은 생성은 구독자에 다시 적용됩니다. |
2 |
동기화는 resync_date_str 지정된 날짜부터 시작됩니다. 날짜 이후에 시작되는 모든 새 세대 또는 불완전한 세대는 구독자에 다시 적용됩니다. |
[ @resync_date_str = ] N'resync_date_str'
다시 동기화가 시작될 날짜를 정의합니다. @resync_date_str 기본값NULL
인 nvarchar(30)입니다. 이 매개 변수는 @resync_type 값2
인 경우 사용됩니다. 지정된 날짜가 해당 날짜/시간 값으로 변환됩니다.
반환 코드 값
0
(성공) 또는 1
(실패).
설명
sp_resyncmergesubscription
는 병합 복제에 사용됩니다.
초기 스냅샷 이후 모든 변경 내용을 다시 나타내는 @resync_type 매개 변수의 0
값은 리소스를 많이 사용하지만 전체 다시 초기화보다 훨씬 적을 수 있습니다. 예를 들어 초기 스냅샷이 한 달 전에 배달된 경우 이 값으로 인해 지난 달의 데이터가 다시 적용됩니다. 초기 스냅샷에 1GB(데이터)가 포함되어 있지만 지난 달의 변경 횟수가 변경된 데이터의 2MB(메가바이트)로 구성된 경우 전체 1GB 스냅샷을 다시 적용하는 것보다 데이터를 다시 적용하는 것이 더 효율적입니다.
사용 권한
sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만 실행할 sp_resyncmergesubscription
수 있습니다.