【问题标题】:Can we restrict our database to not autogrow? [closed]我们可以限制我们的数据库不自动增长吗? [关闭]
【发布时间】:2014-02-18 10:39:37
【问题描述】:

我们可以让我们的数据库(无论它的大小)根本不自动增长(数据和日志文件)吗?

如果我们继续这个选择,当数据库在工作时间被填满时,我们可能会遇到问题

【问题讨论】:

  • 欢迎来到 Stack Overflow!请通过添加适当的标记(Oracle、SQL Server、MySQL 等)来指定您要定位的 RDBMS。可能有一些答案利用了不受普遍支持的语言或产品功能。此外,通过使用特定的 RDBMS 对其进行标记,您的问题可能会受到更适合回答的人的关注。
  • 您想通过限制数据库的大小来扩展您的数据库吗?呜?
  • 你的意思是阻止所有传入的交易吗?
  • 只需将其设为只读即可。增长机会:0%。
  • 您是否在询问如何设置数据库或日志文件的最大大小?

标签: sql


【解决方案1】:

防止增长事件在工作时间发生的典型方法是预先将数据和日志文件分配到足够大的大小,以便首先最大限度地减少或完全消除自动增长事件。这可能意味着文件要大于它们现在所需的大小,但要足够大以处理一段时间内的所有数据和/或您最大的交易x

您可以采取的其他措施来最大程度地减少增长事件的影响:

  • 平衡增长大小,使增长事件很少见,但仍不会单独花费大量时间。您不希望来自模型数据库的 10% 和 1MB 的默认值;但是对于您的设置应该是什么,没有一刀切的答案。

  • 确保您处于正确的恢复模式。如果您不需要时间点恢复,请将您的数据库置于 SIMPLE 中。如果这样做,请将其设置为 FULL,但请确保您经常备份日志。

  • 确保您已启用 instant file initialization。这对日志文件没有帮助,但是当您的数据文件增长时,它应该几乎是瞬时的,达到一定的大小(同样,这里没有万能的)。

  • 摆脱缓慢的存储空间。

更多信息在这里:

How do you clear the SQL Server transaction log?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-20
    • 2013-06-27
    • 2015-09-20
    • 2020-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    相关资源
    最近更新 更多