sys.dm_tran_database_transactions (Transact-SQL)
適用於: SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)
傳回資料庫層級交易的相關信息。
注意
若要從 Azure Synapse Analytics 或 Analytics Platform System (PDW) 呼叫此 DMV,請使用 名稱sys.dm_pdw_nodes_tran_database_transactions。 Azure Synapse Analytics 的無伺服器 SQL 集區不支援此語法。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
transaction_id | bigint | 實例層級交易的標識碼,而不是資料庫層級。 它只在實例內的所有資料庫是唯一的,但並非所有伺服器實例都是唯一的。 |
database_id | int | 與交易相關聯的資料庫標識碼。 在 Azure SQL 資料庫中,這些值在單一資料庫或彈性集區內是唯一的,但在邏輯伺服器內則不是唯一的。 |
database_transaction_begin_time | datetime | 資料庫參與交易的時間。 具體而言,這是交易資料庫中第一筆記錄的時間。 |
database_transaction_type | int | 1 = 讀取/寫入交易 2 = 唯讀交易 3 = 系統交易 |
database_transaction_state | int | 1 = 交易尚未初始化。 3 = 交易已初始化,但尚未產生任何記錄檔記錄。 4 = 交易已產生記錄檔記錄。 5 = 已備妥交易。 10 = 已認可交易。 11 = 已回復交易。 12 = 正在認可交易。 (正在產生記錄檔記錄,但尚未具體化或保存。 |
database_transaction_status | int | 僅供參考之用。 不支援。 我們無法保證未來的相容性。 |
database_transaction_status2 | int | 僅供參考之用。 不支援。 我們無法保證未來的相容性。 |
database_transaction_log_record_count | bigint | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 在資料庫中為交易產生的記錄檔記錄數目。 |
database_transaction_replicate_record_count | int | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 針對複寫的交易,在資料庫中產生的記錄檔記錄數目。 |
database_transaction_log_bytes_used | bigint | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 到目前為止,資料庫記錄中用於交易的位元元組數目。 |
database_transaction_log_bytes_reserved | bigint | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 保留用於交易之資料庫記錄檔中的位元元組數目。 |
database_transaction_log_bytes_used_system | int | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 到目前為止,資料庫記錄中代表交易用於系統交易的位元元組數目。 |
database_transaction_log_bytes_reserved_system | int | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 保留給資料庫記錄檔中代表交易用於系統交易的位元元組數目。 |
database_transaction_begin_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 資料庫記錄中交易之開始記錄的記錄序號 (LSN)。 |
database_transaction_last_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 資料庫記錄中交易最近記錄之記錄的 LSN。 |
database_transaction_most_recent_savepoint_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 資料庫記錄中交易最近儲存點的 LSN。 |
database_transaction_commit_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 資料庫記錄中交易之認可記錄檔記錄的 LSN。 |
database_transaction_last_rollback_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 最近回復到的 LSN。 如果未進行復原,則值為 MaxLSN。 |
database_transaction_next_undo_lsn | numeric(25,0) | 適用於:SQL Server 2008 (10.0.x) 和更新版本。 要復原之下一筆記錄的 LSN。 |
pdw_node_id | int | 適用於:Azure Synapse Analytics、Analytics Platform System (PDW) 此散發節點的標識碼。 |
database_transaction_first_repl_lsn | numeric(25,0) | 適用於:Azure Synapse Analytics、Analytics Platform System (PDW) 需要複寫之交易中第一筆記錄檔記錄的 LSN。 |
權限
在 SQL Server 和 SQL 受控執行個體上,需要 VIEW SERVER STATE
權限。
在 SQL Database [Basic]、[S0] 和 [S1] 服務目標,以及彈性集區中的資料庫,需要伺服器管理員帳戶、伺服器管理員帳戶、Microsoft Entra 管理員帳戶或 ##MS_ServerStateReader##
伺服器角色的成員資格。 在所有其他 SQL Database 服務目標上,需要資料庫的 VIEW DATABASE STATE
權限或 ##MS_ServerStateReader##
伺服器角色的成員資格。
SQL Server 2022 及更新版本的權限
需要伺服器上的 VIEW SERVER PERFORMANCE STATE 權限。