sp_repldone(Transact-SQL)

적용 대상:SQL ServerAzure SQL Managed Instance

서버의 마지막 분산 트랜잭션을 식별하는 레코드를 업데이트. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

주의

sp_repldone 수동으로 실행하는 경우 배달된 트랜잭션의 순서와 일관성을 무효화할 수 있습니다. sp_repldone 숙련된 복제본(replica) 지원 전문가의 지시에 따라 복제본(replica)tion 문제 해결에만 사용해야 합니다.

Transact-SQL 구문 표기 규칙

구문

sp_repldone [ @xactid= ] xactid   
        , [ @xact_seqno= ] xact_seqno   
    [ , [ @numtrans= ] numtrans ]   
    [ , [ @time= ] time   
    [ , [ @reset= ] reset ]  

인수

[ @xactid = ] xactid 서버의 마지막 분산 트랜잭션에 대한 첫 번째 레코드의 LSN(로그 시퀀스 번호)입니다. xactid이진(10)이며 기본값은 없습니다.

[ @xact_seqno = ] xact_seqno 서버의 마지막 분산 트랜잭션에 대한 마지막 레코드의 LSN입니다. xact_seqno 기본값이 없는 binary(10)입니다.

[ @numtrans = ] numtrans 분산된 트랜잭션 수입니다. numtrans는 기본값이 없는 int입니다.

[ @time = ] time 트랜잭션의 마지막 일괄 처리를 배포하는 데 필요한 밀리초(제공된 경우)입니다. 시간은 기본값이 없는 int입니다.

[ @reset = ] reset다시 설정 상태. 초기화기본값 없이 int입니다. 1이면 로그의 모든 복제본(replica)ted 트랜잭션이 분산된 것으로 표시됩니다. 0이면 트랜잭션 로그가 첫 번째 복제본(replica)ted 트랜잭션으로 다시 설정되고 복제본(replica)ted 트랜잭션이 분산된 것으로 표시되지 않습니다. 초기화는 xactidxact_seqno 모두 NULL인 경우에만 유효합니다.

반환 코드 값

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

설명

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

sp_repldone 로그 판독기 프로세스에서 배포된 트랜잭션을 추적하는 데 사용됩니다.

sp_repldone 사용하면 트랜잭션이 복제본(replica)ted(배포자에 전송됨)되었음을 서버에 수동으로 알릴 수 있습니다. 또한 복제본(replica) 대기 중인 다음 트랜잭션으로 표시된 트랜잭션을 변경할 수 있습니다. 복제본(replica)ted 트랜잭션 목록에서 앞으로 또는 뒤로 이동할 수 있습니다. (해당 트랜잭션보다 작거나 같은 모든 트랜잭션은 분산된 것으로 표시됩니다.)

필요한 매개 변수 xactidxact_seqno sp_repltrans 또는 sp_replcmds 사용하여 가져올 수 있습니다.

사용 권한

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

예제

xactid가 NULL이xact_seqno NULL이고 다시 설정이 1면 로그의 모든 복제본(replica)ted 트랜잭션이 분산된 것으로 표시됩니다. 이러한 방법은 더 이상 유효하지 않은 트랜잭션 로그에 복제된 트랜잭션이 있는 상태에서 로그를 자를 때 유용합니다. 예를 들어 다음과 같습니다.

EXEC sp_repldone @xactid = NULL, @xact_seqno = NULL, @numtrans = 0, @time = 0, @reset = 1  

주의

이 절차는 긴급 상황에서 복제본(replica) 보류 중인 트랜잭션이 있을 때 트랜잭션 로그 잘림을 허용하는 데 사용할 수 있습니다.

참고 항목

sp_replcmds(Transact-SQL)
sp_replflush(Transact-SQL)
sp_repltrans(Transact-SQL)
시스템 저장 프로시저(Transact-SQL)