Dela via


sys.dm_db_log_space_usage (Transact-SQL)

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Returnerar information om utrymmesanvändning för transaktionsloggen.

Anmärkning

Alla transaktionsloggfiler kombineras.

Kolumnnamn Datatyp Description
database_id smallint Databas-ID.

I Azure SQL Database är värdena unika i en enskild databas eller en elastisk pool, men inte inom en logisk server.
total_log_size_in_bytes bigint Loggens storlek
used_log_space_in_bytes bigint Loggens upptagna storlek
used_log_space_in_percent verklig Loggens upptagna storlek som en procent av den totala loggstorleken
log_space_in_bytes_since_last_backup bigint Mängden utrymme som använts sedan den senaste loggsäkerhetskopian
Gäller för: SQL Server 2014 (12.x) och senare versioner och SQL Database.

Permissions

SQL Server 2019 (15.x) och tidigare versioner kräver VIEW SERVER STATE behörighet.

SQL Server 2022 (16.x) och senare versioner och Azure SQL Managed Instance kräver VIEW SERVER PERFORMANCE STATE behörighet.

För sql Database Basic-, S0- och S1-tjänstmål och för databaser i elastiska pooler krävs serveradministratörskontot, Microsoft Entra-administratörskontot eller medlemskap i serverrollen##MS_ServerStateReader##. För alla andra SQL Database-tjänstmål krävs antingen behörigheten VIEW DATABASE STATE för databasen eller medlemskap i serverrollen ##MS_ServerStateReader## .

Examples

A. Fastställa mängden ledigt loggutrymme i tempdb

Följande fråga returnerar det totala lediga loggutrymmet i megabyte (MB) som är tillgängligt i 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;