sp_replmonitorhelpsubscription (Transact-SQL)
Gilt für: SQL Server Azure SQL Managed Instance
Gibt die aktuellen Statusinformationen für Abonnements zurück, die zu einer oder mehreren Veröffentlichungen auf dem Verleger gehören. Dabei wird eine Zeile für jedes zurückgegebene Abonnement zurückgegeben. Diese gespeicherte Prozedur, die zur Überwachung der Replikation verwendet wird, wird auf dem Verteiler für die Verteilungsdatenbank ausgeführt.
Transact-SQL-Syntaxkonventionen
Syntax
sp_replmonitorhelpsubscription [ @publisher = ] 'publisher'
[ , [ @publisher_db = ] 'publisher_db' ]
[ , [ @publication = ] 'publication' ]
[ , [ @publication_type = ] publication_type ]
[ , [ @mode = ] mode ]
[ , [ @topnum = ] topnum ]
[ , [ @exclude_anonymous = ] exclude_anonymous ]
[ , [ @refreshpolicy = ] refreshpolicy ]
Argumente
[ @publisher = ] 'publisher'
Ist der Name des Herausgebers, dessen Status überwacht wird. Publisher ist "sysname" mit dem Standardwert NULL. Wenn NULL, werden Informationen für alle Herausgeber zurückgegeben, die den Distributor verwenden.
[ @publisher_db = ] 'publisher_db'
Ist der Name der veröffentlichten Datenbank. publisher_db ist "sysname" mit dem Standardwert NULL. Lautet der Wert NULL, werden Informationen für alle veröffentlichten Datenbanken auf dem Verleger zurückgegeben.
[ @publication = ] 'publication'
Ist der Name der überwachten Publikation. publikation ist sysname, mit einem Standardwert von NULL.
[ @publication_type = ] publication_type
Wenn der Publikationstyp. publication_type ist int und kann einer dieser Werte sein.
Wert | Beschreibung |
---|---|
0 | Transaktionsveröffentlichung. |
1 | Momentaufnahmeveröffentlichung. |
2 | Mergeveröffentlichung. |
NULL (Standard) | Die Replikation versucht, den Veröffentlichungstyp zu ermitteln. |
[ @mode = ] mode
Ist der Filtermodus, der beim Zurückgeben von Abonnementüberwachungsinformationen verwendet werden soll. der Modus "int" ist und einer dieser Werte sein kann.
Wert | Beschreibung |
---|---|
0 (Standardwert) | Gibt alle Abonnements zurück. |
1 | Gibt nur Abonnements mit Fehlern zurück. |
2 | Gibt nur Abonnements zurück, die Schwellenwertwarnungen generiert haben. |
3 | Gibt nur Abonnements zurück, die entweder Fehler aufweisen oder Schwellenwertwarnungen generiert haben. |
4 | Gibt die 25 besten Abonnements mit schlechtester Leistung zurück. |
5 | Gibt die 50 Abonnements zurück, die die schlechteste Leistung aufweisen. |
6 | Gibt nur Abonnements zurück, für die zurzeit eine Synchronisierung im Gange ist. |
7 | Gibt nur Abonnements zurück, für die zurzeit keine Synchronisierung im Gange ist. |
[ @topnum = ] topnum
Beschränkt das Resultset auf die angegebene Anzahl von Abonnements oben in den zurückgegebenen Daten. topnum is int, with no default.
[ @exclude_anonymous = ] exclude_anonymous
Ist, wenn anonyme Pullabonnements vom Resultset ausgeschlossen werden. exclude_anonymous ist bit, mit einem Standardwert von 0; ein Wert von 1 bedeutet, dass anonyme Abonnements ausgeschlossen werden und ein Wert von 0 bedeutet, dass sie enthalten sind.
[ @refreshpolicy = ] refreshpolicy
Nur interne Verwendung.
Resultsets
Spaltenname | Datentyp | BESCHREIBUNG |
---|---|---|
status | int | Überprüft den Status aller Replikations-Agents, die der Veröffentlichung zugeordnet sind, und gibt den höchsten gefundenen Status in der folgenden Reihenfolge zurück: 6 = Fehlgeschlagen 5 = Wiederholen 2 = Beendet 4 = Leerlauf 3 = In Bearbeitung 1 = Gestartet |
Warnung | int | Warnung bezüglich des maximalen Schwellenwerts, die von einem zur Veröffentlichung gehörenden Abonnement generiert wird. Dies kann das Ergebnis des logischen OR-Vorgangs mit mindestens einem der folgenden Werte sein. 1 = Ablauf – ein Abonnement einer transaktionsbezogenen Publikation wurde nicht innerhalb des Aufbewahrungszeitraumsschwellenwerts synchronisiert. 2 = Latenz – die Zeit, die zum Replizieren von Daten aus einem transaktionsbezogenen Publisher an den Abonnenten benötigt wird, überschreitet den Schwellenwert in Sekunden. 4 = MergeExpiration – ein Abonnement einer Zusammenführungsveröffentlichung wurde nicht innerhalb des Aufbewahrungszeitraumsschwellenwerts synchronisiert. 8 = mergefastrunduration - die Zeit für die vollständige Synchronisierung eines Seriendruckabonnements überschreitet den Schwellenwert in Sekunden über eine schnelle Netzwerkverbindung. 16 = mergeslowrunduration - die Zeit für die vollständige Synchronisierung eines Seriendruckabonnements überschreitet den Schwellenwert in Sekunden über eine langsame oder DFÜ-Netzwerkverbindung. 32 = mergefastrunspeed – Die Übermittlungsrate für Zeilen während der Synchronisierung eines Seriendruckabonnements konnte die Schwellenwertrate in Zeilen pro Sekunde über eine schnelle Netzwerkverbindung nicht beibehalten. 64 = mergeslowrunspeed – Die Übermittlungsrate für Zeilen während der Synchronisierung eines Seriendruckabonnements konnte die Schwellenwertrate in Zeilen pro Sekunde über eine langsame oder DFÜ-Netzwerkverbindung nicht beibehalten. |
subscriber | sysname | Der Name des Abonnenten. |
subscriber_db | sysname | Der Name der für das Abonnement verwendeten Datenbank. |
publisher_db | sysname | Der Name der Veröffentlichungsdatenbank. |
Veröffentlichung | sysname | Ist der Name einer Publikation. |
publication_type | int | Ist die Art der Publikation, die einer der folgenden Werte sein kann: 0 = Transaktionsveröffentlichung 1 = Snapshot-Publikation 2 = Publikation zusammenführen |
subtype | int | Der Abonnementtyp, der einen der folgenden Werte haben kann: 0 = Push 1 = Pull 2 = Anonym |
latency | int | Die längste Latenzzeit (in Sekunden) für Datenänderungen, die vom Protokolllese-Agent oder vom Verteilungs-Agent für eine Transaktionsveröffentlichung weitergegeben werden. |
Latenzzeit | int | Die maximale Latenzzeit für die Transaktionsveröffentlichung, bei deren Überschreiten eine Warnung ausgegeben wird. |
agentnotrunning | int | Der Zeitraum (in Stunden), während dem der Agent nicht ausgeführt wird. |
agentnotrunningthreshold | int | Der Zeitraum (in Stunden), während dem der Agent nicht ausgeführt und bei dessen Erreichen eine Warnung ausgegeben wird. |
timetoexpiration | int | Der Zeitraum (in Stunden), an dessen Ende ein Abonnement abläuft, falls es nicht synchronisiert wird. |
expirationthreshold | int | Die Zeit (in Stunden) vor dem Ablaufen eines Abonnements, zu der eine entsprechende Warnmeldung ausgegeben wird. |
last_distsync | datetime | Der datetime-Wert der letzten Ausführung des Verteilungs-Agents. |
distribution_agentname | sysname | Der Name des Verteilungs-Agentauftrags für das Abonnement auf eine Transaktionsveröffentlichung. |
mergeagentname | sysname | Der Name des Merge-Agent-Auftrags für das Abonnement auf eine Mergeveröffentlichung. |
mergesubscriptionfriendlyname | sysname | Der für das Abonnement angegebene angezeigte Name. |
mergeagentlocation | sysname | Der Name des Servers, auf dem der Merge-Agent ausgeführt wird. |
mergeconnectiontype | int | Die beim Synchronisieren eines Abonnements auf eine Mergeveröffentlichung verwendete Verbindung, die einen der folgenden Werte haben kann: 1 = Lokales Netzwerk (LAN) 2 = DFÜ-Netzwerkverbindung 3 = Websynchronisierung. |
mergePerformance | int | Die Leistung der letzten Synchronisierung im Vergleich zu allen Synchronisierungen des Abonnements. Sie ergibt sich aus der Übermittlungsrate der letzten Synchronisierung dividiert durch den Durchschnitt aller vorhergegangenen Übermittlungsraten. |
Fusionunspeed | float | Die Übermittlungsrate der letzten Synchronisierung des Abonnements. |
Fusionsunduration | int | Der Zeitraum für den Abschluss der letzten Synchronisierung des Abonnements. |
Monitorranking | int | Der Rangfolgenwert, der zur Sortierung der Abonnements im Resultset verwendet wird. Er kann folgende Werte haben: Für eine Transaktionsveröffentlichung: 60 = Fehler 56 = Warnung: Leistungskritisch 52 = Warnung: bald oder abgelaufen 50 = Warnung: Abonnement nicht initialisiert 40 = Fehler beim Wiederholen des Befehls 30 = Nicht ausgeführt (Erfolg) 20 = Ausführen (Starten, Ausführen oder Leerlauf) Für eine Mergeveröffentlichung: 60 = Fehler 56 = Warnung: Leistungskritisch 54 = Warnung: Lange laufende Zusammenführung 52 = Warnung: bald abläuft 50 = Warnung: Abonnement nicht initialisiert 40 = Fehler beim Wiederholen des Befehls 30 = Wird ausgeführt (Start, Ausführung oder Leerlauf) 20 = Nicht ausgeführt (Erfolg) |
distributionagentjobid | binary(16) | ID des Verteilungs-Agent-Auftrags für Abonnements auf eine Transaktionsveröffentlichung. |
mergeagentjobid | binary(16) | ID des Merge-Agent-Auftrags für Abonnements auf eine Mergeveröffentlichung. |
distributionagentid | int | ID des Verteilungs-Agent-Auftrags für das Abonnement. |
distributionagentprofileid | int | ID des vom Verteilungs-Agent verwendeten Agentprofils. |
mergeagentid | int | ID des Merge-Agentauftrags für das Abonnement. |
mergeagentprofileid | int | ID des vom Merge-Agent verwendeten Agentprofils. |
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Hinweise
sp_replmonitorhelpsubscription wird mit allen Replikationstypen verwendet.
sp_replmonitorhelpsubscription sortiert das Resultset basierend auf dem Schweregrad des Status des Abonnements, der durch den Wert der Monitorranking bestimmt wird. So werden z. B. Zeilen für alle Abonnements, die einen Fehlerzustand aufweisen, oberhalb der Zeilen für Abonnements einsortiert, die einen Warnungsstatus aufweisen.
Berechtigungen
Nur Mitglieder der db_owner- oder replmonitor-Festen Datenbankrolle in der Verteilungsdatenbank können sp_replmonitorhelpsubscription ausführen.