2008-10-14 84 views
3

我一直在寻找我们为客户端设置的新数据库服务器,并注意每次文件已满并且初始大小为100 MB时,数据库文件都设置为增长1 meg 。按大小SQL Server 2005自动增长

我一直在考虑这件事,它听起来不对。我检查了一些关于数据库考虑因素的网站,他们没有正确解释这些数据。

我可能只想让数据库文件每月扩展一次我们应该说什么?

所以,如果我是计算数据,我期望在兆每天插入,只是乘以30,我应该找到一个合适的数字是多少?

即我知道大约1行的大小以及大约有多少行会在每桌平均每周插入。我知道这些是从头开始估计的,所以你认为每月一次是文件扩展的合适近似值,还是最好每小时扩展一次?或从不?

我们使用的是后卫,所以我们可以恢复到的时间和事务日志备份点是存在的,并在恢复过程似乎是100%有效。这些类型的变化是否会以任何方式影响备份和恢复?

谢谢。

回答

3

你提出的建议非常重要。你希望自动增长是基于你期望看到的。

具有自动增长的1Mb每次它是完全将遇到巨大的性能问题,因为每次数据库已满数据库,无论交易过程中,将不得不暂停,直到它已成长。

我试图找到一个文章我关于这个问题的早期阅读,所以当我找到它,我将添加一个链接...

编辑:http://searchsqlserver.techtarget.com/tip/0,289483,sid87_gci1330922,00.html 这篇文章是关于缩小你的数据库,但它详细说明了数据库自动增长时发生的情况,并显示了它可能具有的性能影响。

你绝对不希望你的数据库的增长速度与1Mb一样快!

0

对于尝试将数据库不断增长的次数降至最低时,通常是正确的。

我无法给你任何确切的值,但是最好是让数据库文件的大小如此之大,你只需要偶尔增大它,然后它必须大幅增长,以免频繁更改文件大小。

0

数据文件已经增长时,它都会占用一些资源量,因为它抓起额外的磁盘空间和扩展数据文件。所以,理想情况下你想限制增长的数量。

我个人试图确保我的数据库不必自动增长。我试图在下班时间主动增长它们。这也让我监视磁盘空间更好,因为这不能轻易“自动成长”;)

每月如果他们自动增长,一旦它应该罚款。每分钟你都会看到性能影响。

除了可能占用更多空间和填满备份位置的备份之外,我无法想出任何会导致备份过程出现问题的原因。我更像是一名SQL开发人员,而不是DBA,所以我不能发誓。

0

除了一些冗余的分配空间之外,大尺寸增量几乎没有或没有缺点。将增量设置为使其每月或几个月增长的大小都是正确的。

无论如何,您应该有一个定期的工作来监视磁盘卷和文件中的可用空间,并生成一份报告,以便您可以看到即将发生的磁盘短缺。

0

我刚刚在SQL Server Management Studio 2008中进行了检查,创建新数据库时的默认增长是1MB ......这可能是您的1MB设置来自哪里(我敢打赌它在2005年是一样的)。

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

只是想呈现我认为可能是一个可行的策略,当然取决于你的情况。

0

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

2

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

否则,您可以获得真正的技术,并查看每周向系统添加多少条记录,考虑归档或删除的记录,然后计算每条记录所需的空间量,并设置自动增长基于那个时间的记录数量。

我将引导一个人远离百分比增长的原因是,当系统为1000 MB时,它将增长100 MB。然后,下一次,系统是1100 MB,并将增加我的110 MB。大小将是1210,数据库将增长到121 MB。那么规模将是1331,增长将是133 MB。随着这种不均衡的增长,它将很难计算剩余的磁盘空间以及何时需要重新调整最大设置。

只要我2美分。

此外,上述默认增长在MODEL数据库中设置。当你创建一个新的数据库时,你的MODEL数据库有什么设置是新数据库默认的。