DBAtlas · 数据库运维图谱

日志文件为何增长/为何无法截断

SQL Server备份与日志

命令

SELECT name,
       recovery_model_desc,
       log_reuse_wait_desc
FROM   sys.databases
WHERE  name = N'Customer';

-- Log space usage for all databases:
SELECT DB_NAME(database_id) AS db, name, type_desc,
       size*8/1024        AS size_mb,
       CAST(FILEPROPERTY(name,'SpaceUsed') AS BIGINT)*8/1024 AS used_mb
FROM   sys.master_files
WHERE  type_desc = 'LOG';

作用

log_reuse_wait_desc 列说明事务日志无法截断的原因(如 LOG_BACKUP、ACTIVE_TRANSACTION、REPLICATION、AVAILABILITY_REPLICA)。

适用场景

日志文件持续增长或日志已满(错误 9002)时查找根本原因。

注意

若显示 LOG_BACKUP,解决办法是执行日志备份,而不是收缩文件。仅查询;无风险。

在 DBAtlas 中打开 →

相关内容