Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Azure SQL Managed Instance
Atualiza o registro que identifica a última transação distribuída do servidor. Este procedimento armazenado é executado no Publisher no banco de dados de publicação.
Atenção
Se você executar sp_repldone manualmente, poderá invalidar a ordem e a consistência das transações entregues. Você só deve usar o sp_repldone para solucionar problemas de replicação conforme indicado por um profissional de suporte de replicação experiente.
Transact-SQL convenções de sintaxe
Sintaxe
sp_repldone [ @xactid = ] xactid
, [ @xact_seqno = ] xact_seqno
[ , [ @numtrans = ] numtrans ]
[ , [ @time = ] time ]
[ , [ @reset = ] reset ]
[ ; ]
Argumentos
Importante
Os argumentos para procedimentos armazenados estendidos devem ser inseridos na ordem específica, conforme descrito na seção de sintaxe. Se os parâmetros forem inseridos fora de ordem, ocorrerá uma mensagem de erro.
[ @xactid = ] xactid
O número de sequência de log (LSN) do primeiro registro para a última transação distribuída do servidor. @xactid é binário(10), sem padrão.
[ @xact_seqno = ] xact_seqno
O LSN do último registro para a última transação distribuída do servidor. @xact_seqno é binário(10), sem padrão.
[ @numtrans = ] numtrans
O número de transações distribuídas. @numtrans é int, sem padrão.
[ @time = ] tempo
O número de milissegundos, se fornecido, necessário para distribuir o último lote de transações. @time é int, sem padrão.
[ @reset = ] redefinir
O status de redefinição. @reset é int, sem padrão.
- Se
1, todas as transações replicadas no log são marcadas como distribuídas. - Se
0, o log de transações será redefinido para a primeira transação replicada e nenhuma transação replicada será marcada como distribuída.
@reset só é válida quando @xactid e @xact_seqno são NULL.
Valores de código de retorno
0 (sucesso) ou 1 (fracasso).
Comentários
sp_repldone é usado na replicação transacional.
sp_repldone é usado pelo processo de leitor de log para rastrear quais transações foram distribuídas.
Com sp_repldone, você pode informar manualmente ao servidor que uma transação foi replicada (enviada ao Distribuidor). Ele também permite que você altere a transação marcada como a próxima aguardando replicação. Você pode avançar ou retroceder na lista de transações replicadas. (Todas as transações menores ou iguais a essa transação são marcadas como distribuídas.)
Os parâmetros necessários @xactid e @xact_seqno podem ser obtidos usando sp_repltrans ou sp_replcmds.
Este procedimento pode ser usado em situações de emergência para permitir o truncamento do log de transações quando as transações pendentes de replicação estiverem presentes. Para obter mais informações, consulte a seção Exemplos.
Permissões
Os membros do sysadmin função de servidor fixa ou a função de banco de dados fixa db_owner podem executar sp_repldone.
Exemplos
Quando @xactid é NULL, @xact_seqno é NULLe @reset é 1, todas as transações replicadas no log são marcadas como distribuídas. Isso é útil quando há transações replicadas no log de transações que não são mais válidas e você deseja truncar o log, por exemplo:
EXECUTE sp_repldone
@xactid = NULL,
@xact_seqno = NULL,
@numtrans = 0,
@time = 0,
@reset = 1;