Sdílet prostřednictvím


sys.dm_tran_database_transactions (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod analýzy SQL v Microsoft FabricSklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Dynamický sys.dm_tran_database_transactions pohled správy vrací informace o transakcích na úrovni databáze.

Název sloupce Datový typ Description
transaction_id bigint ID transakce je na úrovni instance, ne databáze. Je jedinečný pouze ve všech databázích v instanci, ale není jedinečný napříč všemi serverovými instancemi.
database_id int ID databáze spojené s transakcí.

Ve službě Azure SQL Database jsou hodnoty jedinečné v rámci jedné databáze nebo elastického fondu, ale ne v rámci logického serveru.
database_transaction_begin_time datetime Čas, kdy se databáze zapojila do transakce. Konkrétně je to čas prvního záznamu v databázi pro transakci.
database_transaction_type int 1 = Transakce čtení/zápisu

2 = Transakce pouze pro čtení

3 = Systémová transakce
database_transaction_state int 1 = Transakce nebyla inicializována.

3 = Transakce byla inicializována, ale nevytvořila žádné záznamy v logu.

4 = Transakce má vygenerované logové záznamy.

5 = Transakce byla připravena.

10 = Transakce byla dokončena.

11 = Transakce byla zrušena.

12 = Transakce se zavádí. (Záznam logu je generován, ale není materializován ani nepřetrvává.)
database_transaction_status int Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.
database_transaction_status2 int Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.
database_transaction_log_record_count bigint platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet záznamů v logu generovaných v databázi pro transakci.
database_transaction_replicate_record_count int platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet záznamů v logu generovaných v databázi pro replikovanou transakci.
database_transaction_log_bytes_used bigint platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet bajtů použitých dosud v databázovém logu pro transakci.
database_transaction_log_bytes_reserved bigint platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet bajtů vyhrazených pro použití v databázovém logu pro transakci.
database_transaction_log_bytes_used_system int platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet bajtů použitých dosud v databázovém logu pro systémové transakce jménem transakce.
database_transaction_log_bytes_reserved_system int platí pro: SQL Server 2008 (10.0.x) a novější verze.

Počet bajtů vyhrazených pro použití v databázovém logu pro systémové transakce jménem transakce.
database_transaction_begin_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

Záznamové pořadové číslo (LSN) začátečního záznamu transakce v databázovém logu.
database_transaction_last_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

LSN posledně zaznamenaného záznamu transakce v databázovém logu.
database_transaction_most_recent_savepoint_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

LSN posledního uloženého bodu pro transakci v databázovém logu.
database_transaction_commit_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

LSN záznamu záznamu commitu pro transakci v logu databáze.
database_transaction_last_rollback_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

LSN, která byla nedávno vrácena zpět. Pokud k žádnému návratu zpět nedošlo, hodnota je MaxLSN.
database_transaction_next_undo_lsn čísel(25 0) platí pro: SQL Server 2008 (10.0.x) a novější verze.

LSN další desky k vrácení.
pdw_node_id int platí pro: Azure Synapse Analytics, Analytics Platform System (PDW)

Identifikátor uzlu, na který je tato distribuce zapnutá.
database_transaction_first_repl_lsn čísel(25 0) platí pro: Azure Synapse Analytics, Analytics Platform System (PDW)

LSN prvního logu v transakci, který vyžaduje replikaci.

Povolení

Na SQL Serveru a službě SQL Managed Instance vyžaduje VIEW SERVER STATE oprávnění.

V Microsoft Fabric je pro dotazování sys.dm_tran_database_transactionsvyžadováno členství v rolipřispěvatele nebo v privilegované roli.

U cílů služby SQL Database Basic, S0 a S1 a pro databáze v elastických fondech se vyžaduje účet správce serveru , účet správce Microsoft Entra nebo členství v ##MS_ServerStateReader##roli serveru . U všech ostatních cílů VIEW DATABASE STATE služby SQL Database se vyžaduje buď oprávnění k databázi, nebo členství v ##MS_ServerStateReader## roli serveru.

Oprávnění pro SQL Server 2022 a novější

Vyžaduje oprávnění ZOBRAZIT STAV VÝKONU SERVERU na serveru.

Poznámky

Pro volání tohoto DMV z Azure Synapse Analytics nebo Analytics Platform System (PDW) použijte název sys.dm_pdw_nodes_tran_database_transactions Tato syntaxe není podporována serverless SQL poolem v Azure Synapse Analytics.