sys.dm_db_log_space_usage (Transact-SQL)

Применимо к:SQL ServerБаза данных Azure SQLУправляемый экземпляр Azure SQLБаза данных SQL в Microsoft Fabric

Возвращает сведения об использовании пространства для журнала транзакций.

Note

Все файлы журнала транзакций объединяются.

Название столбца Тип данных Описание
database_id smallint Идентификатор базы данных.

В База данных SQL Azure значения уникальны в одной базе данных или эластичном пуле, но не в логическом сервере.
total_log_size_in_bytes bigint Размер журнала
used_log_space_in_bytes bigint Размер занятого журнала
used_log_space_in_percent real Занятый размер журнала в процентах от общего размера журнала
log_space_in_bytes_since_last_backup bigint Объем пространства, используемого с момента последней резервной копии журнала
Применимо к: SQL Server 2014 (12.x) и более поздних версий и базы данных SQL.

Permissions

ДЛЯ SQL Server 2019 (15.x) и более ранних версий требуется VIEW SERVER STATE разрешение.

ДЛЯ SQL Server 2022 (16.x) и более поздних версий и Управляемого экземпляра SQL Azure требуется VIEW SERVER PERFORMANCE STATE разрешение.

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

Examples

А. Определение объема свободного пространства журнала в tempdb

Следующий запрос возвращает общее свободное пространство журнала в мегабайтах (МБ), доступное в tempdb.

USE tempdb;
GO

SELECT (total_log_size_in_bytes - used_log_space_in_bytes) * 1.0 / 1024 / 1024 AS [free log space in MB]
FROM sys.dm_db_log_space_usage;