Bagikan melalui


sys.dm_db_log_space_usage (T-SQL)

Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance

Mengembalikan informasi penggunaan ruang untuk log transaksi.

Catatan

Semua file log transaksi digabungkan.

Nama kolom Jenis data Deskripsi
database_id smallint ID Database.

Di Azure SQL Database, nilainya unik dalam satu database atau kumpulan elastis, tetapi tidak dalam server logis.
total_log_size_in_bytes bigint Ukuran log
used_log_space_in_bytes bigint Ukuran log yang ditempati
used_log_space_in_percent real Ukuran log yang ditempati sebagai persen dari ukuran log total
log_space_in_bytes_since_last_backup bigint Jumlah ruang yang digunakan sejak pencadangan log terakhir
Berlaku untuk: SQL Server 2014 (12.x) dan yang lebih baru, SQL Database.

Izin

Pada SQL Server dan SQL Managed Instance, memerlukan VIEW SERVER STATE izin.

Pada tujuan layanan SQL Database Basic, S0, dan S1, dan untuk database di kumpulan elastis, akun admin server, akun admin Microsoft Entra, atau keanggotaan dalam ##MS_ServerStateReader## peran server diperlukan. Pada semua tujuan layanan SQL Database lainnya, izin VIEW DATABASE STATE pada database, atau keanggotaan dalam ##MS_ServerStateReader## peran server diperlukan.

Izin untuk SQL Server 2022 dan yang lebih baru

Memerlukan izin TAMPILKAN STATUS PERFORMA SERVER pada server.

Contoh

J. Tentukan jumlah ruang log kosong dalam tempdb

Kueri berikut mengembalikan total ruang log kosong dalam megabyte (MB) yang tersedia di 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;  

Langkah berikutnya