Sql server SQL Server 2005按大小自动增长

Sql server SQL Server 2005按大小自动增长,sql-server,sql-server-2005,Sql Server,Sql Server 2005,我一直在看我们为客户机设置的新数据库服务器,注意数据库文件设置为每次文件满时增加1兆,初始大小为100兆 我一直在考虑这个问题,但听起来不太对。我检查了一些关于DB考虑的网站,他们没有正确解释这些值 我可能只希望数据库文件每月扩展一次,好吗 因此,如果我要计算每天插入的数据量(以兆字节为单位),然后乘以30,我应该找到一个合适的数字 i、 e.我确实知道大约1行的大小,以及每个表平均每周插入多少行。我知道这些都是从头开始估算的,所以您认为每月一次是文件扩展的合适近似值,还是最好每小时扩展一次>?

我一直在看我们为客户机设置的新数据库服务器,注意数据库文件设置为每次文件满时增加1兆,初始大小为100兆

我一直在考虑这个问题,但听起来不太对。我检查了一些关于DB考虑的网站,他们没有正确解释这些值

我可能只希望数据库文件每月扩展一次,好吗

因此,如果我要计算每天插入的数据量(以兆字节为单位),然后乘以30,我应该找到一个合适的数字

i、 e.我确实知道大约1行的大小,以及每个表平均每周插入多少行。我知道这些都是从头开始估算的,所以您认为每月一次是文件扩展的合适近似值,还是最好每小时扩展一次>?还是永远不会

我们正在使用full back,以便能够恢复到某个时间点,并且正在进行事务日志备份,恢复过程似乎100%有效。这些类型的更改是否会以任何方式影响备份和恢复


谢谢。

你的建议非常恰当。您希望自动增长基于您希望看到的内容

每次数据库满时自动增长1Mb的数据库将遇到巨大的性能问题,因为每次数据库满时,正在进行的任何事务都必须暂停,直到它增长为止

我想找一篇我以前读过的关于这个主题的文章,所以当我找到它时,我会添加一个链接

编辑: 这篇文章是关于缩小数据库的,但它详细说明了数据库自动增长时会发生什么,并显示了它可能对性能的影响


您肯定不希望您的数据库以1Mb/次的速度增长

在尽量减少数据库增长次数方面,您通常是正确的


我无法给您提供任何精确的值,但最好是数据库文件的大小如此之大,您只需要偶尔增加它,然后它必须大幅增加,这样您就不会经常更改文件大小。

每次数据文件必须增加时,它在占用额外的磁盘空间和扩展数据文件时会占用一些资源。所以,理想情况下,你要限制生长的数量

就我个人而言,我试图确保我的数据库根本不必自动增长。我试着在休息时间主动种植它们。这也让我能够更好地监控磁盘空间,因为这不容易“自动增长”;)

如果它们每个月自动增长一次,那就好了。每一分钟,您都可能会看到性能影响


除了备份可能会占用更多空间并填满备份位置之外,我想不出任何原因会导致备份过程出现问题。与DBA相比,我更像是一名SQL开发人员,因此我不能保证这一点。

除了一些冗余的分配空间之外,大容量增量几乎没有什么不利之处。将增量设置为每个月或几个月增长一次的大小是正确的


无论如何,您应该有一个常规作业来监视磁盘卷和文件中的可用空间,并生成一份报告,这样您就可以看到即将出现的磁盘短缺。

我刚刚在SQL Server Management Studio 2008中进行了检查,创建新数据库时的默认增长是1MB…这可能就是1MB设置的来源(我敢打赌2005年也是如此)

我记得很久以前读过一篇文章,你可以考虑把数据库文件每次需要增长两倍。现在,如果你有一个5TB数据库,你可能不希望它只有11天,但是对于一个大小为1GB的数据库来说,如果它需要的话,它可能会加倍。(如果有恒定的数据输入速率,则事件的增长速率将逐渐衰减)


我只是想介绍一下我认为可行的策略,当然,这取决于您的情况。

建议将文件增长设置为百分比(最佳值为5%到10%)当我们不确定在一天或一周内可能添加的数据的实际大小时。在这种情况下,文件的增长将与数据库的大小成比例。

在我看来,我不会将数据库设置为按百分比增长,而是让数据库以100 MB的速度增长一周,然后将增长设置更改为一周增长,比如说5 GB。我们有这样做的系统

否则,您可以获得真正的技术支持,查看每周向系统添加多少条记录,考虑存档或删除的记录,然后计算每条记录所需的空间量,并根据记录数的倍数设置自动增长

我之所以要让一个人远离百分比增长,是因为当系统为1000 MB时,它将增长100 MB。然后,下一次,系统为1100 MB,将增长我的110 MB。然后,大小将为1210,数据库将增长为121 MB。然后,大小将为1331,增长将为133 MB。在这种不均衡的增长下,它将使计算剩余磁盘空间以及何时需要重新调整最大设置的大小变得非常困难

就差我两分钱了

此外,上面提到的默认增长是在模型数据库中设置的。创建新数据库时,模型数据库的任何设置都是新数据库中的默认设置