跳到主要内容
常见问题 SQL Server数据库大小监控

怎么查数据库当前实际占用大小

用 T-SQL 与 SSMS 查询各库数据文件物理占用,区分物理大小与逻辑大小,并给出上限预警建议。

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

简短答案

看数据文件的物理大小(磁盘上占了多少),而不是逻辑表行数。一条 T-SQL 出各文件 MB,或在 SSMS 看文件属性。

排查步骤

  1. T-SQL 查各库各文件的物理大小(size 单位 KB):
SELECT DB_NAME(dbi.database_id) AS db,
       mdf.size/128 AS mdf_mb,
       log.size/128 AS log_mb
FROM sys.master_files mdf
JOIN sys.master_files log ON log.database_id = mdf.database_id AND log.type = 1
JOIN sys.database_recovery_status dbi ON dbi.database_id = mdf.database_id
WHERE mdf.type = 0;
  1. 或在 SSMS:右键数据库 → 属性 → 文件,直接看各文件大小。
  2. 日志文件(.ldf)也可能不小,别只看数据文件。
  3. 对照 SQL Server Express 的上限(单库 10GB),在逼近前做规划;版本能力以 SQL Server 2022 Developer 等条目页核对。

现象对照表

指标 说明
物理大小 磁盘实际占用,决定能否继续写
逻辑大小 表行数/数据量,不直接对应空间

操作小结

  1. 用 sys.master_files 查物理大小最可靠。
  2. 数据文件与日志文件都要看。
  3. 设阈值预警(如 80% 上限),提前处理。

相关链接

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

相关推荐下载

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

配套 PE 工具

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

其他常见问题

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