sys.dm_tran_database_transactions (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt Informationen zu Transaktionen auf Datenbankebene zurück.
Hinweis
Um diesen DMV aus Azure Synapse Analytics oder Analytics Platform System (PDW) aufzurufen, verwenden Sie den Namen sys.dm_pdw_nodes_tran_database_transactions. Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
transaction_id | bigint | ID der Transaktion auf Instanzebene, nicht auf Datenbankebene. Diese ist nur in allen Datenbanken innerhalb einer Instanz eindeutig, nicht jedoch innerhalb aller Serverinstanzen. |
database_id | int | ID der Datenbank, die der Transaktion zugeordnet ist. In Azure SQL-Datenbank sind die Werte innerhalb einer einzelnen Datenbank oder eines Pools für elastische Datenbanken eindeutig, aber nicht innerhalb eines logischen Servers. |
database_transaction_begin_time | datetime | Zeitpunkt, zu dem die Datenbank in die Transaktion aufgenommen wurde. Genauer gesagt: Dies ist die Zeit des ersten Protokolldatensatzes in der Datenbank für die Transaktion. |
database_transaction_type | int | 1 = Lese-/Schreibtransaktion 2 = Schreibgeschützte Transaktion 3 = Systemtransaktion |
database_transaction_state | int | 1 = Die Transaktion wurde nicht initialisiert. 3 = Die Transaktion wurde initialisiert, hat jedoch keine Protokolldatensätze generiert. 4 = Die Transaktion hat Protokolldatensätze generiert. 5 = Die Transaktion wurde vorbereitet. 10 = Für die Transaktion wurde ein Commit ausgeführt. 11 = Für die Transaktion wurde ein Rollback ausgeführt. 12 = Für die Transaktion wird ein Commit ausgeführt. (Der Protokolldatensatz wird generiert, wurde aber nicht materialisiert oder beibehalten.) |
database_transaction_status | int | Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt. |
database_transaction_status2 | int | Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt. |
database_transaction_log_record_count | bigint | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl der Protokolldatensätze, die in der Datenbank für die Transaktion generiert wurden. |
database_transaction_replicate_record_count | int | Gilt für: SQL Server 2008 (10.0.x) und höher. Die Anzahl der in der Datenbank generierten Protokolldatensätze für die replizierte Transaktion. |
database_transaction_log_bytes_used | bigint | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl von Bytes, die bisher im Datenbankprotokoll für die Transaktion verwendet wurden. |
database_transaction_log_bytes_reserved | bigint | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl von Bytes, die zur Verwendung im Datenbankprotokoll für die Transaktion reserviert wurden. |
database_transaction_log_bytes_used_system | int | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl von Bytes, die im Datenbankprotokoll für Systemtransaktionen bisher für diese Transaktion verwendet wurden. |
database_transaction_log_bytes_reserved_system | int | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl von Bytes, die im Datenbankprotokoll für Systemtransaktionen zur Verwendung für diese Transaktion reserviert wurden. |
database_transaction_begin_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. Protokollfolgenummer (Log Sequence Number, LSN) des ersten Datensatzes für die Transaktion im Datenbankprotokoll. |
database_transaction_last_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. LSN des zuletzt protokollierten Datensatzes für die Transaktion im Datenbankprotokoll. |
database_transaction_most_recent_savepoint_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. LSN des letzten Sicherungspunktes für die Transaktion im Datenbankprotokoll. |
database_transaction_commit_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. LSN des Protokolldatensatzes für den Commit der Transaktion im Datenbankprotokoll. |
database_transaction_last_rollback_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. LSN, zu der das letzte Rollback ausgeführt wurde. Wenn kein Rollback ausgeführt wurde, lautet der Wert "MaxLSN". |
database_transaction_next_undo_lsn | numeric(25,0) | Gilt für: SQL Server 2008 (10.0.x) und höher. LSN des nächsten Datensatzes, der rückgängig gemacht werden soll. |
pdw_node_id | int | Gilt für: Azure Synapse Analytics, Analytics Platform System (PDW) Der Bezeichner für den Knoten, auf dem sich diese Verteilung befindet. |
database_transaction_first_repl_lsn | numeric(25,0) | Gilt für: Azure Synapse Analytics, Analytics Platform System (PDW) LSN des ersten Protokolldatensatzes in der Transaktion, die Replikation benötigt. |
Berechtigungen
Für SQL Server und SQL Managed Instance ist die VIEW SERVER STATE
-Berechtigung erforderlich.
Für die SQL-Datenbank-Ziele Basic, S0 und S1 sowie für Datenbanken in Pools für elastische Datenbanken ist das Konto des Serveradministrators oder des Microsoft Entra-Administratorkontos oder die Mitgliedschaft in der ##MS_ServerStateReader##
Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE STATE
-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader##
-Serverrolle erforderlich.
Berechtigungen für SQL Server 2022 und höher
Erfordert die VIEW SERVER PERFORMANCE STATE-Berechtigung auf dem Server.