为什么“初始大小”设置会发生变化?

时间:2012-10-03 20:40:50

标签: sql-server

导致数据库或日志文件“初始大小”设置发生变化的原因是什么?例如,我们正在尝试缩小过大的事务日志。我们注意到“初始尺寸”比必要的要大得多。我们可以将其设置得更低,但最终会再次达到更高的值。这是AutoGrowth设置吗?

1 个答案:

答案 0 :(得分:5)

“初始大小”信息实际上使用了一个非常具有误导性的标题。这应该是“当前文件大小(MB)”更准确。

试试这个:

选择数据库并检查文件的当前大小。与你在GUI中看到的相比,它们应该是相同的

SELECT file_id, name, physical_name, (size * 8 /1024.0) AS SizeMB FROM sys.database_files

现在增加文件大小(我在这里使用名为DBAdmin的测试数据库)

ALTER DATABASE DBAdmin MODIFY FILE (NAME = dbadmin, SIZE = 1GB)

运行第一个查询,您将看到SizeMB现在反映了该值,GUI中的“初始大小”也是如此。

现在收缩该文件

DBCC SHRINKFILE(1, 500)

再次查看查询和GUI中的值,您会发现它们已恢复为500MB。

这引入了有关事务日志的问题。你是简单恢复还是满员?如果已满,则增加日志备份的频率,以帮助控制事务日志。如果在简单恢复中然后相应地调整事务日志的大小,则不要对其执行收缩操作,因为如果满足相同的条件,它只需要再次增长,并且增长部分将对数据库引入性能损失。