sp_repldone(Transact-SQL)sp_repldone (Transact-SQL)

이 항목은 다음에 적용됩니다.예SQL Server(2008부터)아니요Azure SQL Database아니요Azure SQL Data Warehouse 아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

서버에서 마지막으로 배포된 트랜잭션을 식별하는 레코드를 업데이트합니다.Updates the record that identifies the last distributed transaction of the server. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.This stored procedure is executed at the Publisher on the publication database.

주의

실행 하면 sp_repldone 수동으로 순서와 전달 된 트랜잭션의 일관성을 해칠 수 있습니다.If you execute sp_repldone manually, you can invalidate the order and consistency of delivered transactions. sp_repldone 숙련 된 복제 지원 전문가 지시에 따라 복제 문제를 해결 하는 것에 대 한만 사용 해야 합니다.sp_repldone should only be used for troubleshooting replication as directed by an experienced replication support professional.

항목 링크 아이콘 Transact-SQL 구문 규칙Topic link icon Transact-SQL Syntax Conventions

구문Syntax


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

인수Arguments

[ @xactid=] xactid[ @xactid=] xactid
서버의 마지막 분산된 트랜잭션에 대 한 첫 번째 레코드의 로그 시퀀스 번호 (LSN)를입니다.Is the log sequence number (LSN) of the first record for the last distributed transaction of the server. xactidbinary (10), 기본값은 없습니다.xactid is binary(10), with no default.

[ @xact_seqno=] xact_seqno[ @xact_seqno=] xact_seqno
서버의 마지막 분산된 트랜잭션에 대 한 마지막 레코드의 LSN입니다.Is the LSN of the last record for the last distributed transaction of the server. xact_seqnobinary (10), 기본값은 없습니다.xact_seqno is binary(10), with no default.

[ @numtrans=] numtrans[ @numtrans=] numtrans
배포 된 트랜잭션 수가입니다.Is the number of transactions distributed. numtransint, 기본값은 없습니다.numtrans is int, with no default.

[ @time=] 시간[ @time=] time
트랜잭션의 마지막 일괄 처리를 배포하는 데 필요한 시간(밀리초)입니다.Is the number of milliseconds, if provided, needed to distribute the last batch of transactions. 시간int, 기본값은 없습니다.time is int, with no default.

[ @reset=] 다시 설정[ @reset=] reset
다시 설정 상태입니다.Is the reset status. 다시 설정int, 기본값은 없습니다.reset is int, with no default. 경우 1, 복제 된 모든 로그에 트랜잭션이 표시 된 배포 됨으로 합니다.If 1, all replicated transactions in the log are marked as distributed. 경우 0, 트랜잭션 로그가 첫 번째 복제 된 트랜잭션으로 다시 설정 되 고 복제 된 트랜잭션이 표시 된 배포 됨으로 합니다.If 0, the transaction log is reset to the first replicated transaction and no replicated transactions are marked as distributed. 다시 설정 유효한 경우에 둘 다 xactidxact_seqno 은 NULL입니다.reset is valid only when both xactid and xact_seqno are NULL.

반환 코드 값Return Code Values

0 (성공) 또는 1 (실패)0 (success) or 1 (failure)

주의Remarks

sp_repldone 트랜잭션 복제에 사용 됩니다.sp_repldone is used in transactional replication.

sp_repldone 로그 판독기 프로세스에 의해 어떤 트랜잭션이 배포 되었는지 추적 하는 데 사용 됩니다.sp_repldone is used by the log reader process to track which transactions have been distributed.

sp_repldone, 수동으로 트랜잭션 (배포자에 게 전송 됨) 복제 된 서버 알릴 수 있습니다.With sp_repldone, you can manually tell the server that a transaction has been replicated (sent to the Distributor). 또한 트랜잭션을 복제를 대기하고 있는 다음 트랜잭션으로 표시하도록 변경할 수 있습니다.It also allows you to change the transaction marked as the next one awaiting replication. 복제된 트랜잭션 목록에서 앞뒤로 이동할 수 있습니다(해당You can move forward or backward in the list of replicated transactions. 트랜잭션 이하의 모든 트랜잭션이 배포됨 표시됩니다).(All transactions less than or equal to that transaction are marked as distributed.)

필수 매개 변수 xactidxact_seqno 를 사용 하 여 얻을 수 sp_repltrans 또는 sp_replcmds합니다.The required parameters xactid and xact_seqno can be obtained by using sp_repltrans or sp_replcmds.

PermissionsPermissions

멤버는 sysadmin 고정된 서버 역할 또는 db_owner 고정된 데이터베이스 역할을 실행할 수 있는 sp_repldone합니다.Members of the sysadmin fixed server role or the db_owner fixed database role can execute sp_repldone.

Examples

xactid 가 NULL 인 xact_seqno 가 NULL 인 및 재설정1, 복제 된 모든 로그에 트랜잭션이 표시 된 배포 됨으로 합니다.When xactid is NULL, xact_seqno is NULL, and reset is 1, all replicated transactions in the log are marked as distributed. 이러한 방법은 더 이상 유효하지 않은 트랜잭션 로그에 복제된 트랜잭션이 있는 상태에서 로그를 자를 때 유용합니다. 예를 들어 다음과 같습니다.This is useful when there are replicated transactions in the transaction log that are no longer valid and you want to truncate the log, for example:

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

주의

이 프로시저는 트랜잭션 보류 중인 복제가 있을 때 트랜잭션 로그를 자를 수 있도록 하며 비상 시에 사용합니다.This procedure can be used in emergency situations to allow truncation of the transaction log when transactions pending replication are present.

관련 항목:See Also

sp_replcmds(Transact-SQL) sp_replcmds (Transact-SQL)
sp_replflush (TRANSACT-SQL) sp_replflush (Transact-SQL)
sp_repltrans (TRANSACT-SQL) sp_repltrans (Transact-SQL)
시스템 저장 프로시저(Transact-SQL)System Stored Procedures (Transact-SQL)