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;