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


sys.dm_tran_aborted_transactions (Transact-SQL)

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

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

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

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

В База данных SQL Azure значения уникальны в одной базе данных или эластичном пуле, но не в логическом сервере.
begin_xact_lsn числовой (25 0) Начальный номер LSN прерванной транзакции.
end_xact_lsn числовой (25 0) Конец LSN прерванной транзакции.
begin_time даты и времени Время начала прерванной транзакции.
nest_aborted битовое Если значение 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 на сервере.

Замечания

В sys.dm_tran_aborted_transactions dmV отображаются все прерванные транзакции в экземпляре ядра СУБД. Столбец nest_aborted указывает, что транзакция зафиксирована или активна, но есть части (точки сохранения или вложенные транзакции), которые прерваны. Это может блокировать процесс очистки PVS, пока транзакция остается активной. Дополнительные сведения см. в статье Мониторинг и устранение неполадок с ускорением восстановления базы данных.

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