sys.dm_cdc_log_scan_sessions (Transact-SQL)
Gibt eine Zeile für jede Protokollscansitzung in der aktuellen Datenbank zurück. Die letzte zurückgegebene Zeile stellt die aktuelle Sitzung dar. Mithilfe dieser Sicht können Sie Statusinformationen zur aktuellen Protokollscansitzung oder aggregierte Informationen zu allen Sitzungen zurückzugeben, seit die Instanz von SQL Server das letzte Mal gestartet wurde.
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
session_id |
int |
ID der Sitzung. 0 = Die in dieser Zeile zurückgegebenen Daten sind ein Aggregat aller Sitzungen, seit die Instanz von SQL Server das letzte Mal gestartet wurde. |
start_time |
datetime |
Zeitpunkt, zu dem die Sitzung begonnen wurde. Wenn session_id = 0, der Zeitpunkt, zu dem mit der aggregierten Datensammlung begonnen wurde. |
end_time |
datetime |
Zeitpunkt, zu dem die Sitzung beendet wurde. NULL = Sitzung ist aktiv. Wenn session_id = 0, der Zeitpunkt, zu dem die letzte Sitzung beendet wurde. |
duration |
bigint |
Die Dauer (in Sekunden) der Sitzung. 0 = Die Sitzung enthält keine Change Data Capture-Transaktionen. Wenn session_id = 0, die Summer der Dauer (in Sekunden) aller Sitzungen mit Change Data Capture-Transaktionen. |
scan_phase |
nvarchar(200) |
Die aktuelle Phase der Sitzung. Eine der Folgenden:
PhaseBeschreibung
1Lesen der Konfiguration
2Erster Scan, Erstellen der Hashtabelle
3Zweiter Scan
4Zweiter Scan
5Zweiter Scan
6Versionsverwaltung des Schemas
7Letzter Scan
8Fertig
Wenn session_id = 0 ist, lautet dieser Wert immer "Aggregate". |
error_count |
int |
Anzahl der aufgetretenen Fehler. Wenn session_id = 0, die Gesamtzahl der Fehler in allen Sitzungen. |
start_lsn |
nvarchar(23) |
Start-LSN für die Sitzung. Wenn session_id = 0, die Start-LSN für die letzte Sitzung. |
current_lsn |
nvarchar(23) |
Aktuelle LSN, die gescannt wird. Wenn session_id = 0, weist die aktuelle LSN den Wert 0 auf. |
end_lsn |
nvarchar(23) |
Letzte LSN für die Sitzung. NULL = Sitzung ist aktiv. Wenn session_id = 0, die letzte LSN für die letzte Sitzung. |
tran_count |
bigint |
Anzahl der verarbeiteten Change Data Capture-Transaktionen. Dieser Leistungsindikator wird in Phase 2 aufgefüllt. Wenn session_id = 0, die Anzahl der verarbeiteten Transaktionen in allen Sitzungen. |
last_commit_lsn |
nvarchar(23) |
LSN des letzten verarbeiteten Protokolldatensatzes für den Commit. Wenn session_id = 0, die letzte LSN des Protokolldatensatzes für den Commit einer beliebigen Sitzung. |
last_commit_time |
datetime |
Zeitpunkt, zu dem der letzte Protokolldatensatz für den Commit verarbeitet wurde. Wenn session_id = 0, der Zeitpunkt des letzten Protokolldatensatzes für den Commit einer beliebigen Sitzung. |
log_record_count |
bigint |
Anzahl der gescannten Protokolldatensätze. Wenn session_id = 0, die Anzahl der gescannten Datensätze für alle Sitzungen. |
schema_change_count |
int |
Anzahl der erkannten Vorgänge in der Datendefinitionssprache (Data Definition Language, DDL). Dieser Leistungsindikator wird in Phase 6 aufgefüllt. Wenn session_id = 0, die Anzahl der verarbeiteten DDL-Vorgänge in allen Sitzungen. |
command_count |
bigint |
Anzahl der verarbeiteten Befehle. Wenn session_id = 0, die Anzahl der verarbeiteten Befehle in allen Sitzungen. |
first_begin_cdc_lsn |
nvarchar(23) |
Erste LSN, die Change Data Capture-Transaktionen enthalten hat. Wenn session_id = 0, die erste LSN, die Change Data Capture-Transaktionen enthalten hat. |
last_commit_cdc_lsn |
nvarchar(23) |
LSN des letzten Protokolldatensatzes für den Commit, der Change Data Capture-Transaktionen enthalten hat. Wenn session_id = 0, die LSN des letzten Protokolldatensatzes für den Commit für eine beliebige Sitzung, die Change Data Capture-Transaktionen enthalten hat. |
last_commit_cdc_time |
datetime |
Zeitpunkt, zu dem der letzte Protokolldatensatz für den Commit verarbeitet wurde, der Change Data Capture-Transaktionen enthalten hat. Wenn session_id = 0, der Zeitpunkt des letzten Protokolldatensatzes für den Commit für eine beliebige Sitzung, die Change Data Capture-Transaktionen enthalten hat. |
latency |
int |
Der Unterschied in Sekunden zwischen end_time und last_commit_cdc_time in der Sitzung. Dieser Leistungsindikator wird am Ende der Phase 7 aufgefüllt. Wenn session_id = 0, der von einer Sitzung aufgezeichnete letzte Latenzzeitwert ungleich 0 (null). |
empty_scan_count |
int |
Anzahl der aufeinander folgenden Sitzungen, die keine Change Data Capture-Transaktionen enthalten haben. |
failed_sessions_count |
int |
Anzahl der fehlgeschlagenen Sitzungen. |
Hinweise
Die Werte in dieser dynamischen Verwaltungssicht werden immer dann zurückgesetzt, wenn die Instanz von SQL Server gestartet wird.
Berechtigungen
Erfordert die VIEW DATABASE STATE-Berechtigung zum Abfragen der dynamischen Verwaltungssicht sys.dm_cdc_log_scan_sessions. Weitere Informationen zu Berechtigungen für dynamische Verwaltungssichten finden Sie unter Dynamische Verwaltungssichten und Funktionen (Transact-SQL).
Beispiele
Im folgenden Beispiel werden Informationen zur aktuellen Sitzung zurückgegeben.
USE AdventureWorks2008R2;
GO
SELECT *
FROM sys.dm_cdc_log_scan_sessions
WHERE session_id = (SELECT MAX(b.session_id) from sys.dm_cdc_log_scan_sessions AS b);
GO