Anteckning
Å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
Azure SQL Managed Instance
Returnerar kommandona för transaktioner som har markerats för replikering. Den här lagrade proceduren körs i Publisher i publikationsdatabasen.
Viktig
Den sp_replcmds proceduren ska endast köras för att felsöka problem med replikering.
Transact-SQL syntaxkonventioner
Syntax
sp_replcmds [ @maxtrans = ] maxtrans
[ ; ]
Argument
Viktig
Argument för utökade lagrade procedurer måste anges i den specifika ordning som beskrivs i avsnittet Syntax. Om parametrarna anges i fel ordning visas ett felmeddelande.
[ @maxtrans = ] maxtrans
Antalet transaktioner att returnera information om.
@maxtrans är int, med standardvärdet 1, som anger nästa transaktion som väntar på distribution.
Resultatuppsättning
| Kolumnnamn | Datatyp | Beskrivning |
|---|---|---|
article id |
int | Artikelns ID. |
partial_command |
bit | Anger om det här kommandot är ett partiellt kommando. |
command |
varbinary(1024) | Kommandovärdet. |
xactid |
binär(10) | Transaktions-ID. |
xact_seqno |
varbinary(16) | Transaktionssekvensnumret. |
publication_id |
int | Publikationens ID. |
command_id |
int | ID för kommandot i MSrepl_commands. |
command_type |
int | Typ av kommando. |
originator_srvname |
sysname | Server där transaktionen har sitt ursprung. |
originator_db |
sysname | Databas där transaktionen har sitt ursprung. |
pkHash |
int | Endast intern användning. |
originator_publication_id |
int | ID för publikationen där transaktionen uppstod. |
originator_db_version |
int | Version av databasen där transaktionen kom från. |
originator_lsn |
varbinary(16) | Identifierar loggsekvensnumret (LSN) för kommandot i den ursprungliga publikationen. |
Anmärkningar
sp_replcmds används av loggläsarprocessen i transaktionsreplikering.
Replikering behandlar den första klienten som kör sp_replcmds i en viss databas som loggläsare.
Den här proceduren kan generera kommandon för ägarkvalificerade tabeller eller inte kvalificera tabellnamnet (standard). Genom att lägga till kvalificerade tabellnamn kan du replikera data från tabeller som ägs av en specifik användare i en databas till tabeller som ägs av samma användare i en annan databas.
Eftersom tabellnamnet i källdatabasen är kvalificerat efter ägarnamnet måste tabellens ägare i måldatabasen vara samma ägarnamn.
Klienter som försöker köra sp_replcmds i samma databas får fel 18752 tills den första klienten kopplas från. När den första klienten har kopplats från kan en annan klient köra sp_replcmdsoch blir den nya loggläsaren.
Ett varningsmeddelandenummer 18759 läggs till i både SQL Server-felloggen och Microsoft Windows-programloggen, om sp_replcmds inte kan replikera ett textkommando eftersom textpekaren inte hämtades i samma transaktion.
Behörigheter
Endast medlemmar i sysadmin fast serverroll eller db_owner fast databasroll kan köra sp_replcmds.