sp_resyncmergesubscription(Transact-SQL)
사용자가 지정한 알려진 확인 상태로 병합 구독을 다시 동기화합니다. 이를 통해 마지막으로 유효성 검사에 성공한 시간 또는 지정한 날짜 등의 특정 시점으로 구독 데이터베이스를 강제 수렴 또는 동기화할 수 있습니다. 이 방법으로 구독을 다시 동기화할 경우 스냅숏이 다시 적용되지 않습니다. 이 저장 프로시저는 스냅숏 복제 구독이나 트랜잭션 복제 구독에는 사용되지 않습니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 또는 구독 데이터베이스의 구독자에서 실행됩니다.
구문
sp_resyncmergesubscription [ [ @publisher = ] 'publisher' ]
[ , [ @publisher_db = ] 'publisher_db' ]
, [ @publication = ] 'publication'
[ , [ @subscriber = ] 'subscriber' ]
[ , [ @subscriber_db = ] 'subscriber_db' ]
[ , [ @resync_type = ] resync_type ]
[ , [ @resync_date_str = ] resync_date_string ]
인수
[ @publisher = ] 'publisher'
게시자의 이름입니다. publisher는 sysname이며 기본값은 NULL입니다. NULL 값은 저장 프로시저가 게시자에서 실행될 경우 유효합니다. 저장 프로시저를 구독자에서 실행할 경우 게시자를 지정해야 합니다.[ @publisher_db = ] 'publisher_db'
게시 데이터베이스의 이름입니다. publisher_db는 sysname이며 기본값은 NULL입니다. NULL 값은 저장 프로시저가 게시 데이터베이스의 게시자에서 실행될 경우 유효합니다. 저장 프로시저를 구독자에서 실행할 경우 게시자를 지정해야 합니다.[ @publication= ] 'publication'
게시의 이름입니다. publication은 sysname이며 기본값은 없습니다.[ @subscriber = ] 'subscriber'
구독자의 이름입니다. subscriber는 sysname이며 기본값은 NULL입니다. NULL 값은 저장 프로시저가 구독자에서 실행될 경우 유효합니다. 저장 프로시저를 게시자에서 실행할 경우 구독자를 지정해야 합니다.[ @subscriber_db = ] 'subscriber_db'
구독 데이터베이스의 이름입니다. subscription_db는 sysname이며 기본값은 NULL입니다. NULL 값은 저장 프로시저가 구독 데이터베이스의 구독자에서 실행될 경우 유효합니다. 저장 프로시저를 게시자에서 실행할 경우 구독자를 지정해야 합니다.[ @resync_type = ] resync_type
다시 동기화가 시작될 시기를 정의합니다. resync_type은 int이며 다음 값 중 하나일 수 있습니다.값
설명
0
초기 스냅숏 후부터 동기화가 시작됩니다. 초기 스냅숏 이후의 모든 변경 내용이 구독자에 다시 적용되므로 가장 리소스 집약적인 옵션입니다.
1
마지막으로 성공한 유효성 검사 이후부터 동기화가 시작됩니다. 마지막으로 성공한 유효성 검사 이후에 시작된 모든 새로운 또는 완료되지 않은 생성은 구독자에 다시 적용됩니다.
2
resync_date_str에 지정한 날짜부터 동기화가 시작됩니다. 이 날짜 이후에 시작된 모든 새로운 또는 완료되지 않은 생성은 구독자에 다시 적용됩니다.
[ @resync_date_str=] resync_date_string
다시 동기화가 시작될 날짜를 정의합니다. resync_date_string은 **nvarchar(30)**이며 기본값은 NULL입니다. 이 매개 변수는 resync_type의 값이 2일 때 사용됩니다. 제공한 날짜는 동등한 datetime 값으로 변환됩니다.
반환 코드 값
0(성공) 또는 1(실패)
주의
sp_resyncmergesubscription은 병합 복제에서 사용됩니다.
resync_type 매개 변수에 대한 값이 0인 경우 초기 스냅숏 이후의 모든 변경 사항을 다시 적용하므로 리소스 집약적일 수 있으나 전체 다시 초기화보다는 훨씬 덜 리소스 집약적입니다. 예를 들어 초기 스냅숏이 한 달 전에 전달되었다면 이 값은 지난 달부터의 데이터를 다시 적용합니다. 초기 스냅숏이 1GB의 데이터를 가지고 있으나 지난 달부터의 변경 사항의 양은 2MB의 변경된 데이터를 가진다면 그 데이터를 다시 적용하는 것이 전체 1GB의 스냅숏을 다시 적용하는 것보다 효율적입니다.
사용 권한
sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만이 sp_resyncmergesubscription을 실행할 수 있습니다.