Поделиться через


sys.dm_tran_aborted_transactions (Transact-SQL)

Область применения: SQL Server 2019 (15.x) База данных SQL Azure Управляемый экземпляр SQL Azure

Возвращает сведения о неразрешенных, прерванных транзакциях в экземпляре SQL Server.

Таблица возвращенной информации

Имя столбца Тип данных Description
transaction_id INT Прерванная transaction_id транзакция.
database_id INT Прерванная database_id транзакция.

В База данных SQL Azure значения уникальны в одной базе данных или эластичном пуле, но не в логическом сервере.
begin_xact_lsn numeric(25,0) Начальный номер LSN прерванной транзакции.
end_xact_lsn numeric(25,0) Конец LSN прерванной транзакции.
begin_time datetime Время начала прерванной транзакции.
nest_aborted bit Если значение 1, указывает, что транзакция имеет вложенную прерванную транзакцию.

Разрешения

На SQL Server и управляемом экземпляре SQL необходимо разрешение VIEW SERVER STATE.

Для целей службы База данных SQL Basic, S0 и S1, а также для баз данных в эластичных пулах, учетной записи администратора сервера, учетной записи администратора Microsoft Entra или членства в ##MS_ServerStateReader## роли сервера требуется. Для всех остальных целей обслуживания базы данных SQL требуется разрешение VIEW DATABASE STATE в базе данных или членство в роли сервера ##MS_ServerStateReader##.

Разрешения для SQL Server 2022 и более поздних версий

Требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.

Замечания

DMV sys.dm_tran_aborted_transactions отображает все прерванные транзакции в экземпляре SQL Server. Столбец nest_aborted указывает, что транзакция зафиксирована или активна, но существуют части, прерванные (точки сохранения или вложенные транзакции), которые могут блокировать процесс очистки PVS. Дополнительные сведения см. в статье Устранение неполадок ускоренного восстановления баз данных.

Неразрешенные, прерванные транзакции будут удалены процессом очистки хранилища постоянных версий (PVS).

См. также