我知道数据库可以达到特定大小X,但其中一些文件是空的,日志数据等
我如何才能找出数据库中有多少 B/KB/MB 大小的真实数据?
答案1
查看sp_spaceused。
sp_spaceused [[ @objname = ] 'objname' ]
[,[ @updateusage = ] 'updateusage' ]
[@对象名称=] ‘对象名称’
是请求空间使用信息表、索引视图或队列的限定或非限定名称。仅当指定了限定对象名称时才需要引号。如果提供了完全限定的对象名称(包括数据库名称),则数据库名称必须是当前数据库的名称。
如果没有指定 objname,则返回整个数据库的结果。
objname 是nvarchar(776),默认值为无效的。
[@更新使用情况=] ‘更新使用情况’
指示应运行 DBCC UPDATEUSAGE 来更新空间使用信息。当对象名未指定,则该语句将在整个数据库上运行;否则,该语句将运行在对象名。值可以是 true 或 false。updateusage 是varchar(5),默认值为 错误的。
答案2
在 SQL Server Management Studio 中,您可以右键单击数据库 -> 报告 -> 磁盘使用情况。
答案3
如果我理解正确的话,您想知道数据库中有多少是纯数据,有多少是用于管理这些数据的。我不禁想知道您为什么想知道这些,但是好吧……
兰多夫给出了正确的答案:sp_spaceused 我只是添加了包含附加信息的链接。这样,您就可以查看如何使用它,因为它还可以提供有关表格和其他对象的信息。
答案4
如果您使用未压缩的本机备份,请对磁盘进行完整备份并检查其文件大小 - 备份不包含数据库文件中的可用空间。