sys.dm_tran_aborted_transactions (Transact-SQL)
适用于: SQL Server 2019 (15.x)
Azure SQL 数据库
Azure SQL 托管实例
返回有关数据库引擎实例中未解析的中止事务的信息。
返回的表
列名称 | 数据类型 | 描述 |
---|---|---|
transaction_id |
int |
transaction_id 中止的事务。 |
database_id |
int |
database_id 中止的事务。在 Azure SQL 数据库中,这些值在单一数据库或弹性池中是唯一的,但在逻辑服务器中不是唯一的。 |
begin_xact_lsn |
numeric(25,0) | 中止事务的起始 LSN。 |
end_xact_lsn |
numeric(25,0) | 中止事务的结束 LSN。 |
begin_time |
日期/时间 | 中止的事务的开始时间。 |
nest_aborted |
位 | 当 1 时,指示事务具有嵌套中止的事务。 |
权限
对于 SQL Server 和 SQL 托管实例,需要 VIEW SERVER STATE
权限。
在 SQL 数据库“基本”、“S0”和“S1”服务目标中,对于“弹性池”中的数据库,服务器管理员帐户、Microsoft Entra 管理员帐户或 ##MS_ServerStateReader##
服务器角色中的成员身份为必填项。 对于所有其他 SQL 数据库服务目标,需要数据库的 VIEW DATABASE STATE
权限或 ##MS_ServerStateReader##
服务器角色中的成员身份。
SQL Server 2022 及更高版本的权限
需要对服务器具有 VIEW SERVER PERFORMANCE STATE
权限。
注解
sys.dm_tran_aborted_transactions
DMV 显示数据库引擎实例中的所有中止事务。
nest_aborted
列指示事务已提交或处于活动状态,但存在中止的部分(保存点或嵌套事务)。 这可以阻止 PVS 清理过程,而事务保持活动状态。 有关详细信息,请参阅 监视和排查加速数据库恢复问题。
通过未解析创建的行版本,永久性版本存储(PVS)清理会删除中止的事务。