欢迎光临护送网
详情描述

1. 使用系统存储过程 sp_spaceused

查询特定数据库的大小

USE [数据库名]
EXEC sp_spaceused

查询所有数据库的大小

EXEC sp_msforeachdb 'USE [?]; EXEC sp_spaceused'

2. 查询系统视图 sys.database_files

查看当前数据库的详细文件信息

USE [数据库名]
SELECT 
    name AS [文件名],
    type_desc AS [文件类型],
    physical_name AS [物理路径],
    size/128.0 AS [文件大小(MB)],
    FILEPROPERTY(name, 'SpaceUsed')/128.0 AS [已用空间(MB)],
    size/128.0 - FILEPROPERTY(name, 'SpaceUsed')/128.0 AS [可用空间(MB)],
    growth/128 AS [自动增长(MB)]
FROM sys.database_files

3. 查询系统视图 sys.master_files

查看所有数据库的文件信息

SELECT 
    DB_NAME(database_id) AS [数据库名],
    name AS [逻辑文件名],
    type_desc AS [文件类型],
    physical_name AS [物理路径],
    size/128.0 AS [文件大小(MB)],
    CASE max_size 
        WHEN 0 THEN '不自动增长'
        WHEN -1 THEN '增长到磁盘满'
        ELSE CAST(max_size/128.0 AS VARCHAR) + ' MB'
    END AS [最大大小]
FROM sys.master_files
ORDER BY database_id, file_id

4. 综合查询所有数据库大小

查询所有数据库的总大小

SELECT 
    name AS [数据库名],
    SUM(size)/128.0 AS [总大小(MB)],
    SUM(CASE type WHEN 0 THEN size ELSE 0 END)/128.0 AS [数据文件大小(MB)],
    SUM(CASE type WHEN 1 THEN size ELSE 0 END)/128.0 AS [日志文件大小(MB)]
FROM sys.master_files
GROUP BY database_id, name
ORDER BY [总大小(MB)] DESC

5. 查看数据库空间使用详情

详细的空间使用分析

SELECT 
    DB_NAME() AS [数据库名],
    (SELECT SUM(size)/128.0 FROM sys.database_files WHERE type = 0) AS [数据文件总大小(MB)],
    (SELECT SUM(FILEPROPERTY(name, 'SpaceUsed'))/128.0 
     FROM sys.database_files WHERE type = 0) AS [数据文件已用空间(MB)],
    (SELECT SUM(size)/128.0 FROM sys.database_files WHERE type = 1) AS [日志文件总大小(MB)],
    (SELECT SUM(FILEPROPERTY(name, 'SpaceUsed'))/128.0 
     FROM sys.database_files WHERE type = 1) AS [日志文件已用空间(MB)]

6. 使用动态管理视图 (DMV)

监控数据库文件增长

SELECT 
    DB_NAME(database_id) AS [数据库名],
    file_id,
    num_of_reads,
    num_of_writes,
    size_on_disk_bytes/1024/1024 AS [磁盘大小(MB)],
    io_stall_read_ms,
    io_stall_write_ms
FROM sys.dm_io_virtual_file_stats(NULL, NULL)

7. 实用脚本 - 生成数据库大小报告

SELECT 
    db.name AS [数据库名],
    mf.name AS [文件逻辑名],
    mf.physical_name AS [物理文件路径],
    CAST(mf.size/128.0 AS DECIMAL(10,2)) AS [当前大小(MB)],
    CAST(mf.size/128.0 - CAST(FILEPROPERTY(mf.name, 'SpaceUsed') AS INT)/128.0 
         AS DECIMAL(10,2)) AS [可用空间(MB)],
    CASE mf.is_percent_growth 
        WHEN 1 THEN CAST(mf.growth AS VARCHAR) + '%'
        ELSE CAST(mf.growth/128 AS VARCHAR) + ' MB'
    END AS [增长方式],
    CASE mf.max_size 
        WHEN 0 THEN '不增长'
        WHEN -1 THEN '无限制'
        ELSE CAST(mf.max_size/128 AS VARCHAR) + ' MB'
    END AS [最大大小]
FROM sys.databases db
INNER JOIN sys.master_files mf ON db.database_id = mf.database_id
WHERE db.name NOT IN ('master', 'model', 'msdb', 'tempdb')
ORDER BY db.name, mf.type

8. 使用 SSMS 图形界面查看

在 SSMS 中右键点击数据库 选择"属性" → "文件" 查看初始大小、自动增长设置等信息

注意事项:

单位换算:SQL Server 中的 size 字段以 8KB 页为单位,除以 128 转换为 MB 已用空间:使用 FILEPROPERTY(name, 'SpaceUsed') 获取实际使用空间 日志文件:日志文件可能会显示较大但实际使用较少 系统数据库:查询时通常排除系统数据库(master, model, msdb, tempdb)

这些方法可以根据需要选择使用,通常建议使用 sys.master_files 视图查询所有数据库信息,使用 sys.database_files 查询特定数据库的详细信息。

相关帖子
微信群主在管理过程中,如何平衡言论自由与维护群内秩序的关系?
微信群主在管理过程中,如何平衡言论自由与维护群内秩序的关系?
焦作市精准获客引流#模版网站建设,专业开发团队
焦作市精准获客引流#模版网站建设,专业开发团队
焦作市高效获客渠道@网站定制,服务可靠
焦作市高效获客渠道@网站定制,服务可靠
退休后利用业余爱好发展成可持续的副业,有哪些成功的思路可以参考?
退休后利用业余爱好发展成可持续的副业,有哪些成功的思路可以参考?
公司和员工约定的发薪日是20号,遇到国庆长假应该提前还是顺延,规则是怎样的?
公司和员工约定的发薪日是20号,遇到国庆长假应该提前还是顺延,规则是怎样的?
假性近视的恢复周期通常是多长,有哪些指标可以判断恢复进程是否良好?
假性近视的恢复周期通常是多长,有哪些指标可以判断恢复进程是否良好?
广州市精准获客助手@网站建设,小程序开发
广州市精准获客助手@网站建设,小程序开发
连云港市高效获客助手#品牌网站开发建设,多年专业建站经验
连云港市高效获客助手#品牌网站开发建设,多年专业建站经验
海西病人跨省市转运救护车出租-收费合理,设备齐全
海西病人跨省市转运救护车出租-收费合理,设备齐全
如何根据车价定贷款期限?高低价位车型年限建议
如何根据车价定贷款期限?高低价位车型年限建议
除了防止晒黑,坚持做好防晒对皮肤健康有那些更长远的好处?
除了防止晒黑,坚持做好防晒对皮肤健康有那些更长远的好处?
汽车评估价值怎么定?车辆抵押贷款办理流程中的估值逻辑
汽车评估价值怎么定?车辆抵押贷款办理流程中的估值逻辑
泉州市短视频营销推广@品牌网站建设开发,网站制作
泉州市短视频营销推广@品牌网站建设开发,网站制作
过桥垫资流程中的征信报告,个人与企业征信获取方式
过桥垫资流程中的征信报告,个人与企业征信获取方式
用自住公寓抵押消费贷,与住宅相比利率上浮幅度与额度打折比例
用自住公寓抵押消费贷,与住宅相比利率上浮幅度与额度打折比例
北海市erp系统开发@企业网站定制开发,多年专业建站经验
北海市erp系统开发@企业网站定制开发,多年专业建站经验
汽车贷款额度与购车合同,合同金额对贷款的作用
汽车贷款额度与购车合同,合同金额对贷款的作用
申请押证不押车贷款前,算好这笔费用账,避免入不敷出
申请押证不押车贷款前,算好这笔费用账,避免入不敷出
东莞市商城建设#网站设计本地公司,专业设计团队
东莞市商城建设#网站设计本地公司,专业设计团队
具有稀缺性和独特性的虚拟道具,是否就意味着它一定能保值?
具有稀缺性和独特性的虚拟道具,是否就意味着它一定能保值?