sp_replshowcmds (Transact-SQL)
S’applique à : SQL Server Azure SQL Managed Instance
Renvoie les commandes pour les transactions signalées pour la réplication dans un format lisible. sp_replshowcmds
peut être exécuté uniquement lorsque les connexions clientes (y compris la connexion actuelle) ne lisent pas les transactions répliquées à partir du journal. Cette procédure stockée est exécutée sur le serveur de publication dans la base de données de publication.
Conventions de la syntaxe Transact-SQL
Syntaxe
sp_replshowcmds [ [ @maxtrans = ] maxtrans ]
[ ; ]
Arguments
[ @maxtrans = ] maxtrans
Nombre de transactions sur lesquelles retourner des informations. @maxtrans est int, avec une valeur par défaut 1
, qui spécifie le nombre maximal de transactions en attente de réplication pour lesquelles sp_replshowcmds
retourne des informations.
Jeu de résultats
sp_replshowcmds
est une procédure de diagnostic qui retourne des informations sur la base de données de publication à partir de laquelle elle est exécutée.
Nom de la colonne | Type de données | Description |
---|---|---|
xact_seqno |
binary(10) | Numéro de séquence de la commande. |
originator_id |
int | ID de l’originateur de commande, toujours 0 . |
publisher_database_id |
int | ID de la base de données Publisher, toujours 0 . |
article_id |
int | ID de l’article. |
type |
int | Type de commande. |
command |
nvarchar(1024) | Commande Transact-SQL . |
Notes
sp_replshowcmds
est utilisé dans la réplication transactionnelle.
À l’aide sp_replshowcmds
de , vous pouvez afficher les transactions qui ne sont actuellement pas distribuées (ces transactions restantes dans le journal des transactions qui ne sont pas encore envoyées au serveur de distribution).
Les clients qui s’exécutent sp_replshowcmds
et sp_replcmds
dans la même base de données reçoivent l’erreur 18752.
Pour éviter cette erreur, le premier client doit se déconnecter ou le rôle du client en tant que lecteur de journal doit être libéré en exécutant sp_replflush
. Une fois que tous les clients se déconnectent du lecteur de journal, sp_replshowcmds
ils peuvent être exécutés correctement.
Remarque
sp_replshowcmds
doit être exécuté uniquement pour résoudre les problèmes de réplication.
autorisations
Seuls les membres du rôle serveur fixe sysadmin ou le rôle de base de données fixe db_owner peuvent s’exécuter sp_replshowcmds
.