Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Azure SQL Managed Instance
SQL-Datenbank in Microsoft Fabric
Gibt Informationen zur Speicherplatznutzung für das Transaktionsprotokoll zurück.
Note
Alle Transaktionsprotokolldateien werden kombiniert.
| Spaltenname | Datentyp | Description |
|---|---|---|
database_id |
smallint | Datenbank-ID In Azure SQL-Datenbank sind die Werte innerhalb einer einzelnen Datenbank oder eines Pools für elastische Datenbanken eindeutig, aber nicht innerhalb eines logischen Servers. |
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) und höhere Versionen und SQL-Datenbank. |
Erlaubnisse
SQL Server 2019 (15.x) und frühere Versionen erfordern VIEW SERVER STATE eine Berechtigung.
SQL Server 2022 (16.x) und höhere Versionen sowie azure SQL Managed Instance erfordern VIEW SERVER PERFORMANCE STATE Berechtigungen.
Für SQL-Datenbank Basic, S0und S1 Dienstziele sowie für Datenbanken in elastischen Poolsist der Serveradministrator Konto, der Microsoft Entra-Administrator Konto oder die Mitgliedschaft in der ##MS_ServerStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbankdienstziele ist entweder die VIEW DATABASE STATE Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader## Serverrolle erforderlich.
Examples
A. Ermitteln des freien Speicherplatzes in tempdb
Die folgende Abfrage gibt den gesamten freien Protokollspeicherplatz in Megabyte (MB) zurück, der in tempdb verfügbar ist.
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;