sys.dm_db_log_space_usage (Transact-SQL)

Gilt für: SQL Server (alle unterstützten Versionen) Azure SQL Datenbank-Azure SQL Managed Instance

Gibt Platznutzungsinformationen für das Transaktionsprotokoll zurück.

Hinweis

Alle Transaktionsprotokolldateien werden kombiniert.

Spaltenname Datentyp BESCHREIBUNG
database_id smallint Datenbank-ID
total_log_size_in_bytes bigint Die Größe des Protokolls
used_log_space_in_bytes bigint Die belegte Größe des Protokolls
used_log_space_in_percent real Die belegte Größe des Protokolls als Prozent der Gesamtprotokollgröße
log_space_in_bytes_since_last_backup bigint Der Speicherplatz, der seit der letzten Protokollsicherung verwendet wird
Gilt für: SQL Server 2014 (12.x) bis SQL Server, SQL-Datenbank.

Berechtigungen

Für SQL Server und SQL Managed Instance ist die VIEW SERVER STATE-Berechtigung erforderlich.

Für Standard-, S0- und S1-Dienstziele von SQL-Datenbank sowie für Datenbanken in Pools für elastische Datenbanken ist das Konto des Serveradministrators, des Azure Active Directory-Administrators oder die Mitgliedschaft in der ##MS_ServerStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE STATE-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader##-Serverrolle erforderlich.

Beispiele

A. Ermitteln der Menge des freien Protokollspeichers in tempdb

Die folgende Abfrage gibt den gesamten freien Protokollspeicher in Megabyte (MB) zurück, der in 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;  

Nächste Schritte