sp_dbmmonitorchangealert (Transact-SQL)
Gilt für: SQL Server
Mit dieser Prozedur können Warnungsschwellenwerte für eine bestimmte Spiegelungsleistungsmetrik hinzugefügt oder geändert werden.
Transact-SQL-Syntaxkonventionen
sp_dbmmonitorchangealert
[ @database_name = ] N'database_name'
, [ @alert_id = ] alert_id
, [ @threshold = ] threshold
[ , [ @enabled = ] enabled ]
[ ; ]
Argumente
[ @database_name = ] N'database_name'
Gibt die Datenbank an, für die der angegebene Warnschwellenwert hinzugefügt oder geändert wurde. @database_name ist "sysname" ohne Standard.
[ @alert_id = ] alert_id
Ein ganzzahliger Wert, der die hinzuzufügende oder zu ändernde Warnung identifiziert. @alert_id ist int und muss einen der folgenden Werte aufweisen:
Wert | Leistungsmetrik | Schwellenwert für Warnung |
---|---|---|
1 |
Älteste, nicht gesendete Transaktion | Gibt die Menge an Transaktionen (in Anzahl Minuten) an, die sich in der Sendewarteschlange ansammeln dürfen, bevor auf der Prinzipalserverinstanz eine Warnung generiert wird. Diese Warnung hilft dabei, das Potenzial für Datenverluste in Bezug auf die Zeit zu messen und kann für den Hochleistungsmodus relevant sein. Die Warnung ist aber auch für den Modus für hohe Sicherheit relevant, wenn die Spiegelung angehalten oder unterbrochen wird, weil die Verbindung zwischen den Partnern getrennt wurde. |
2 |
Nicht gesendetes Protokoll | Gibt an, bei welcher Menge (in KB) an nicht gesendeten Protokolldaten eine Warnung auf der Prinzipalserverinstanz generiert wird. Diese Warnung hilft dabei, das Potenzial für Datenverluste in Bezug auf KB zu messen und kann für den Hochleistungsmodus relevant sein. Die Warnung ist aber auch für den Modus für hohe Sicherheit relevant, wenn die Spiegelung angehalten oder unterbrochen wird, weil die Verbindung zwischen den Partnern getrennt wurde. |
3 |
Nicht wiederhergestelltes Protokoll | Gibt an, bei welcher Menge (in KB) an nicht wiederhergestellten Protokolldaten eine Warnung auf der Spiegelserverinstanz generiert wird. Diese Warnung hilft beim Messen der Failoverzeit. Failoverzeit besteht hauptsächlich aus der Zeit, die der frühere Spiegelserver benötigt, um jedes Protokoll weiterzuleiten, das in der Redo-Warteschlange verbleibt, sowie eine kurze zusätzliche Zeit. |
4 |
Spiegelungscommitaufwand | Gibt die durchschnittliche Verzögerung (in Anzahl der Millisekunden) pro Transaktion an, die toleriert wird, bevor auf dem Prinzipalserver eine Warnung generiert wird. Hierbei handelt es sich um die Verzögerung, die entsteht, während die Prinzipalserverinstanz darauf wartet, dass die Spiegelserverinstanz den Transaktionsprotokolldatensatz in die Wiederholungswarteschlange schreibt. Dieser Wert ist nur im Modus für hohe Sicherheit relevant. |
5 |
Aufbewahrungszeitraum | Metadaten, die steuern, wie lange Zeilen in der Datenbankspiegelungs-Statustabelle beibehalten werden. |
Informationen zu den Ereignis-IDs, die den Warnungen entsprechen, finden Sie unter Verwenden von Warnungsschwellenwerten und Warnungen für Spiegelungsleistungsmetriken (SQL Server).For information about the event IDs corresponding to the warnings, see Use Warning Thresholds and Alerts on Mirroring Performance Metrics (SQL Server)
[ @threshold = ] Schwellenwert
Der Schwellenwert für die Warnung. @threshold ist int, ohne Standard. Wenn der Rückgabewert beim Aktualisieren des Spiegelungsstatus diesen Schwellenwert überschreitet, wird ein Eintrag im Windows-Ereignisprotokoll generiert. Der Wert stellt je nach Leistungsmetrik KB, Minuten oder Millisekunden dar.
Hinweis
Führen Sie zum Anzeigen der aktuellen Werte die sp_dbmmonitorresults gespeicherten Prozedur aus.
[ @enabled = ] aktiviert
Gibt an, ob die Warnung aktiviert ist. @enabled ist bit, mit einem Standardwert von 1
. Die Beibehaltungsdauer ist immer aktiviert.
0
= Warnung ist deaktiviert.1
= Warnung ist aktiviert.
Rückgabecodewerte
Keine.
Resultset
Keine.
Berechtigungen
Erfordert die Mitgliedschaft in der festen Serverrolle "sysadmin ", oder führen Sie die Berechtigung direkt für diese gespeicherte Prozedur aus.
Beispiele
Im folgenden Beispiel werden Schwellenwerte für jede Leistungsmetrik sowie die Beibehaltungsdauer für die AdventureWorks2022
-Datenbank festgelegt. In den folgende Tabelle werden die im Beispiel verwendeten Werte gezeigt.
alert_id | Leistungsmetrik | Schwellenwert für Warnung | Warnung aktiviert? |
---|---|---|---|
1 |
Älteste, nicht gesendete Transaktion | 30 Minuten | Ja |
2 |
Nicht gesendetes Protokoll | 10,000 KB | Ja |
3 |
Nicht wiederhergestelltes Protokoll | 10,000 KB | Ja |
4 |
Spiegelungscommitaufwand | 1.000 Millisekunden | No |
5 |
Aufbewahrungszeitraum | Acht Stunden | Ja |
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 1, 30, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 2, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 3, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 4, 1000, 0;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 5, 8, 1;