SQL Server 日志文件继续增长?

Ada*_* W. 1 sql-server-2008 transaction-log

我遇到了 SQL Server 日志文件的问题,该文件无法在已发布的 HDD 上保持稳定的空间量。驱动器大约为 50GB,并且日志文件越来越频繁地占用它。

数据库设置为完整恢复模式,每小时进行一次差异备份。我知道这应该允许日志文件截断并使用已经分配给它的空间?

当使用DBCC LOGINFO它检查日志文件的状态时,它返回文件中大多数 VLF 的状态设置为“2”,这表明它们处于活动状态?我们在日志文件中有 537 个 VLF。我不知道为什么所有这些都会使用 15GB 的空间同时处于活动状态?

我已经检查了复制DBCC OPENTRAN,它报告说文件上没有主动打开的事务。

有没有一种我可能会忽略的维护这个文件的方法?

有什么地方可以去确定日志文件在做什么?

复制会干扰截断/缩小日志文件吗?

目前,它每天增长约 1.67GB。在我不得不执行一些缩小文件的紧急工作之前,我有大约 18 天的时间。如果可能的话,我希望它保持在 25GB 以下,以便在突然需要空间时有足够的增长空间。

swa*_*eck 8

不。差异永远不会截断日志。请考虑您的恢复需求并选择符合这些要求的恢复模型。

仍然存在一种广泛存在的误解,即在 FULL 或 BULK_LOGGED 恢复模型中正确时,完整或差异备份可以截断日志。不,它永远不会发生。

http://www.sqlskills.com/blogs/paul/misconceptions-around-the-log-and-log-backups-how-to-convince-yourself/

我建议放松差异,并从每 15 分钟安排一次 t-log 备份开始。

更多信息:

一旦你适当地备份了你的 t-logs,那么你就会想要不理会收缩。无论它增长到什么程度(通常在 15 分钟内)通常都是它实际需要的增长概况。缩小日志文件只是让它再次增长会导致不必要的开销并可能影响性能。

如果您想合并您的 VLF,那么您需要找到一个中断窗口,以便您可以缩小日志文件,然后使用标准增量(使用8000MB 的增长增量)将其恢复到首选大小

  • 虽然链接答案很有帮助,但将 OP 指向链接的特定部分或什至将其包含在您的答案中是有益的。 (3认同)
  • 玛丽安 - 那是数据库双关语吗?:) Swascheck - 真棒。谢谢 - 我实际上并不知道。欣赏有关该主题的一些阅读的综合链接。将测试并报告。 (2认同)