Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Används under felsökning för att specificera den senast levererade transaktionen med hjälp av loggsekvensnumret (LSN), vilket gör att Distribution Agent kan börja leverera vid nästa transaktion. Efter omstart returnerar Distribution Agent transaktioner större än denna vattenstämpel (LSN) från distributionsdatabasens cache (msrepl_commands). Denna lagrade procureur utförs hos prenumeranten i prenumerationsdatabasen. Stöds inte för icke-SQL Server-prenumeranter.
Caution
Felaktig användning av denna lagrade procedur eller att ange ett felaktigt LSN-värde kan få Distribution Agent att återställa ändringar som redan har applicerats hos abonnenten eller hoppa över alla återstående ändringar.
Transact-SQL syntaxkonventioner
Syntax
sys.sp_setsubscriptionxactseqno
[ @publisher = ] N'publisher'
, [ @publisher_db = ] N'publisher_db'
, [ @publication = ] N'publication'
, [ @xact_seqno = ] xact_seqno
[ ; ]
Arguments
[ @publisher = ] N'publisher'
Namnet på utgivaren. @publisher är sysname, utan standard.
[ @publisher_db = ] N'publisher_db'
Namnet på publikationsdatabasen. @publisher_db är sysname, utan standard. För en icke-SQL Server Publisher är @publisher_db namnet på distributionsdatabasen.
[ @publication = ] N'publicering'
Namnet på publikationen.
@publication är sysname, utan standard. När mer än en publikation delar Distribution Agent måste du ange ett värde på ALL för @publication.
[ @xact_seqno = ] xact_seqno
LSN för nästa transaktion hos distributören ska tillämpas på abonnenten. @xact_seqno är varbinär(16), utan standard.
Resultatuppsättning
| Kolumnnamn | Datatyp | Description |
|---|---|---|
ORIGINAL XACT_SEQNO |
varbinary(16) | Det ursprungliga LSN för nästa transaktion ska tillämpas på abonnenten. |
UPDATED XACT_SEQNO |
varbinary(16) | Det uppdaterade LSN för nästa transaktion ska tillämpas på prenumeranten. |
SUBSCRIPTION STREAM COUNT |
int | Antalet prenumerationsströmmar som användes under den senaste synkroniseringen. |
Returnera kodvärden
0 (lyckades) eller 1 (fel).
Remarks
sp_setsubscriptionxactseqno används vid transaktionell replikation.
sp_setsubscriptionxactseqno kan inte användas i en peer-to-peer-transaktionell replikationstopologi.
sp_setsubscriptionxactseqno kan användas för att hoppa över en specifik transaktion som orsakar ett fel när gäller på prenumeranten. När det uppstår ett fel och efter att Distribution Agent upphört, anropa sp_helpsubscriptionerrors hos distributören för att hämta xact_seqno värdet av den misslyckade transaktionen, och anropa sp_setsubscriptionxactseqnosedan , och skicka detta värde för @xact_seqno. Detta säkerställer att endast kommandona efter detta LSN bearbetas.
Ange ett värde för 0för @xact_seqno för att leverera alla väntande kommandon i distributionsdatabasen till prenumeranten.
sp_setsubscriptionxactseqnokan misslyckas om Distribution Agent använder strömmar med flera prenumerationer.
När detta fel uppstår måste du köra Distribution Agent med en enda prenumerationsström. Mer information finns i Distributionsagent för replikering.
Permissions
Endast medlemmar av sysadmin-fasta serverrollen eller db_owner fasta databasrollen kan köra sp_setsubscriptionxactseqno.