跳到主要内容
常见问题 SQL Server磁盘空间故障排查

SQL Server 所在磁盘写满怎么查

定位磁盘写满的元凶:数据文件、日志文件、备份文件与错误日志占用排查,以及 Express 10GB 上限的叠加判断。

发布于 2026/11/11 所属频道 SQL Server

简短答案

磁盘写满时先找「谁在吃盘」:数据文件、日志文件、备份文件、错误日志。用 T-SQL 列各库各文件的物理占用,再按清理优先级处理。

排查步骤

  1. 查各库文件占用(MB):
SELECT DB_NAME(database_id) AS db, name, size/128 AS size_mb, type_desc
FROM sys.master_files ORDER BY size DESC;
  1. 判断大头:
    • 日志文件暴涨 → 有长事务未提交,先处理事务(或备份日志),再收缩;
    • 备份文件堆积 → 按保留策略清理旧 .bak/.trn;
    • 数据文件本身大 → 归档或扩容。
  2. Express 环境注意:单库 10GB 上限与磁盘容量是两回事,上限见 SQL Server Express 条目页。
  3. 用 SSMS 数据库属性核对文件配置,确认增长模式。
  4. 清理后观察余量,设容量告警(如 80%)避免再次写满。

现象对照表

占用大头 处理
日志文件 先处理事务/日志备份,再收缩
备份文件 按保留策略清理
数据文件 归档冷数据或扩容

操作小结

  1. 先定位大头再动手,别盲目收缩。
  2. 日志暴涨优先处理长事务,收缩是后手。
  3. 设容量告警,提前预警。

相关链接

本文内容基于公开资料整理,仅供参考;涉及授权与合规的操作请以厂商官方文档为准。

相关推荐下载

按本文主题匹配的官方原版镜像条目

配套 PE 工具

制作启动盘、备份数据、修复引导

其他常见问题

同一集合内的相近主题,按标签与关键词匹配