由于某种原因我的sql数据库文件爆炸成超过88 GB,我看不出原因。我运行几个脚本来搜索大表,发现什么都不是太大。我还尝试运行shrink数据库(什么也没做)和收缩文件(返回错误)。
有谁知道我还能做什么?
感谢。
答案 0 :(得分:3)
我要检查的第一件事(如果你已经检查了表和索引大小,但仍然看到很大的区别)是文件属性。
在SQL Server Management Studio中,转到对象资源管理器,右键单击相关数据库并执行“属性”,然后转到“文件”选项卡。
你有什么文件?他们的设置是什么,尤其是“Autogrowth”设置?如果数据文件接近填满,SQL Server将以这些设置中定义的方式扩展它 - 如果您定义应将50GB添加到文件中,并且磁盘空间可用,SQL Server将很乐意强制执行所以 - 即使它只需要几百个额外的字节。
答案 1 :(得分:1)
MDF(数据文件)还是LDF(日志文件)?
如果您正在使用完全恢复模式运行,那么您的日志文件可能会不断增长和增长,直到您备份它为止(此时它会将其清空)。
否则,你可以尝试寻找占用空间的东西:
select *
from sys.allocation_units;
请记住,数据库文件中可能有空格。您的“收缩文件”对话框将显示可用空间百分比。