Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt Statuszeilen für eine überwachte Datenbank aus der Statustabelle zurück, in der der Verlauf des Datenbankspiegelungs-Monitors gespeichert ist. Dabei können Sie angeben, ob die Prozedur zuvor den letzten Status abrufen soll.
Transact-SQL-Syntaxkonventionen
Syntax
sp_dbmmonitorresults database_name
, rows_to_return
, update_status
Argumente
database_name
Gibt die Datenbank an, für die der Spiegelungsstatus zurückgegeben werden soll.rows_to_return
Gibt die Menge der zurückgegebenen Zeilen an:0 = Letzte Zeile
1 = Zeilen der letzten 2 Stunden
2 = Zeilen der letzten 4 Stunden
3 = Zeilen der letzten 8 Stunden
4 = Zeilen des letzten Tages
5 = Zeilen der letzten 2 Tage
6 = Die letzten 100 Zeilen
7 = Die letzten 500 Zeilen
8 = Die letzten 1.000 Zeilen
9 = Die letzten 1.000.000 Zeilen
update_status
Gibt das Verhalten der Prozedur vor dem Zurückgeben der Ergebnisse an:0 = Der Status der Datenbank wird nicht aktualisiert. Die Ergebnisse werden nur aus den letzten beiden Zeilen berechnet, deren Alter vom Aktualisierungszeitpunkt der Statustabelle abhängt.
1 = Der Status der Datenbank wird durch den Aufruf von sp_dbmmonitorupdate aktualisiert, bevor die Ergebnisse berechnet werden. Wenn die Statustabelle jedoch in den letzten 15 Sekunden aktualisiert wurde oder der Benutzer kein Mitglied der festen Serverrolle sysadmin ist, wird sp_dbmmonitorresults ohne ein Update des Status ausgeführt.
Rückgabecodewerte
Keine
Resultsets
Gibt die angeforderte Anzahl von Zeilen aus dem Statusverlauf für die angegebene Datenbank zurück. Jede Zeile enthält die folgenden Informationen:
Spaltenname |
Datentyp |
Beschreibung |
|---|---|---|
database_name |
sysname |
Name einer gespiegelten Datenbank. |
role |
int |
Aktuelle Spiegelungsrolle der Serverinstanz: 1 = Prinzipal 2 = Spiegel |
mirroring_state |
int |
Status der Datenbank: 0 = Angehalten 1 = Getrennt 2 = Wird synchronisiert 3 = Ausstehendes Failover 4 = Synchronisiert |
witness_status |
int |
Verbindungsstatus des Zeugen in der Datenbank-Spiegelungssitzung der Datenbank: 0 = Unbekannt 1 = Verbunden 2 = Getrennt |
log_generation_rate |
int |
Umfang des seit dem vorhergehenden Update des Spiegelungsstatus dieser Datenbank generierten Protokolls in KB/s. |
unsent_log |
int |
Größe des nicht gesendeten Protokolls in der Sendewarteschlange auf dem Prinzipal in KB. |
send_rate |
int |
Senderate des Protokolls vom Prinzipal zum Spiegel in KB/s. |
unrestored_log |
int |
Größe der Wiederholungswarteschlange auf dem Spiegel in KB. |
recovery_rate |
int |
Wiederholungsrate auf dem Spiegel in KB/s. |
transaction_delay |
int |
Gesamtverzögerung für alle Transaktionen in Millisekunden. |
transactions_per_sec |
int |
Anzahl der Transaktionen, die pro Sekunde in der Prinzipalserverinstanz auftreten. |
average_delay |
int |
Durchschnittliche Verzögerung in der Prinzipalserverinstanz für jede Transaktion aufgrund der Datenbankspiegelung. Im Modus für hohe Leistung (d. h., wenn die SAFETY-Eigenschaft auf OFF festgelegt ist), ist dieser im Allgemeinen 0. |
time_recorded |
datetime |
Zeit, zu der die Zeile vom Datenbankspiegelungs-Monitor aufgezeichnet wurde. Dies ist die Systemuhrzeit auf dem Prinzipal. |
time_behind |
datetime |
Ungefähre Systemuhrzeit des Prinzipals, auf deren Stand die Spiegelungsdatenbank derzeit gebracht wird. Der Wert ist nur in der Prinzipalserverinstanz sinnvoll. |
local_time |
datetime |
Systemuhrzeit in der lokalen Serverinstanz, zu der diese Zeile aktualisiert wurde. |
Hinweise
sp_dbmmonitorresults kann nur im Kontext der msdb-Datenbank ausgeführt werden.
Berechtigungen
Erfordert die Mitgliedschaft in der festen Serverrolle sysadmin oder in der festen Datenbankrolle dbm_monitor in der msdb-Datenbank. Die dbm_monitor-Rolle ermöglicht ihren Mitgliedern das Anzeigen, aber nicht das Aktualisieren des Datenbank-Spiegelungsstatus und nicht das Anzeigen oder Konfigurieren von Datenbank-Spiegelungsereignissen.
Hinweis |
|---|
Bei der ersten Ausführung von sp_dbmmonitorupdate wird die feste Datenbankrolle dbm_monitor in der msdb-Datenbank erstellt. Mitglieder der festen Serverrolle sysadmin können der festen Datenbankrolle dbm_monitor beliebige Benutzer hinzufügen. |
Beispiele
Im folgenden Beispiel werden die Zeilen, die in den letzten 2 Stunden aufgezeichnet wurden, zurückgegeben, ohne dass der Status der Datenbank aktualisiert wird.
USE msdb;
EXEC sp_dbmmonitorresults AdventureWorks2012, 2, 0;
Siehe auch
Verweis
sp_dbmmonitorchangemonitoring (Transact-SQL)
sp_dbmmonitoraddmonitoring (Transact-SQL)
sp_dbmmonitordropmonitoring (Transact-SQL)
sp_dbmmonitorhelpmonitoring (Transact-SQL)
sp_dbmmonitorupdate (Transact-SQL)
Hinweis