我有一个实时的 SQL 2005 数据库,并且非常不幸地成为了非自愿的 DBA。
数据库有一个 1.4 GB 的 MDF 文件和一个 2.2 GB 的 LDF 文件。自动增长设置为不限制增长 10%。我有很多磁盘空间 - 所以我认为最好将初始大小设置为大得多。它增长很快 - 在过去 6 个月内大小翻了一番。
我可以选择一个较大的数字(因为我有足够的空间),然后简单地更改初始大小(可能为 4,000 或其他值) - 然后将其设置为每周检查以确保我们不在该数字的某个百分比之内?
谢谢。
答案1
是的。您可以增加 mdf 的初始大小,SQL Server 会将文件增大到该大小。在实时数据库上执行此操作非常安全,但要选择安静的时间!您会发现大小增加非常快。我刚刚将测试数据库从 128MB 增大到 4GB,只用了 2 秒钟。
考虑到数据库的当前大小,初始大小为 4GB 似乎是合理的。如果您有大量磁盘空间,为什么不将增长设置为较高的值,例如 2GB 甚至 4GB?以较大的增量增加数据库可以减少 mdf 文件的物理碎片。
您不需要每周检查,因为 SQL Server 会不断增大文件。只需确保您不会用尽磁盘空间即可。
JR
PS 我刚刚看到了 Aaron 的回复。我与他的观点不同,我对数据库的自动增长没有意见。但是您需要设置自动增长参数以避免出现大量小幅增长。10% 是默认值,我认为这对于大多数数据库来说太小了。
PPS,日志大小看起来有点大。数据库是否设置为“完整日志”,如果是,您确定数据库正在备份吗?如果日志文件大小超出控制范围,您可以使用“dbcc shrinkfile”来减小它。有关详细信息,请参阅联机丛书。
答案2
多么及时 - 我昨天刚刚写了一篇关于这个问题的日志博客文章 - 请查看数据文件大小管理的重要性。 概括:
- 最初确定数据文件的大小以考虑当前大小加上至少一年的增长(如果可能)
- 如果可以,请打开即时文件初始化(注意:这只会影响数据文件,日志文件始终必须清零)
- 总是已打开自动增长 - 我完全不同意任何持相反观点的人的观点。当您的监控失败时,它应该始终处于紧急情况下(除非 SCOM 错误阻止您打开它 - 请参阅文章了解解释)
- 将自动增长设置为固定的、适当的大小
- 不要依赖自动增长。监控文件使用情况并手动增长。监控紧急情况下是否发生自动增长
- 如果可以避免,千万不要退缩。我的博客文章中有一段脚本可以告诉你为什么。
- 您的日志文件似乎太大。请查看此其他博客文章适当的事务日志大小管理的重要性获得一些提示和技巧。
希望这可以帮助!
答案3
aSkywalker,使用原力,或者查看 Paul Randal 关于“非自愿 DBA”的文章: