代码之家  ›  专栏  ›  技术社区  ›  Ray Booysen

SQL Server日志文件混乱

  •  4
  • Ray Booysen  · 技术社区  · 17 年前

    我在寻找SQL Server日志文件的清晰性。我有一个更大的数据库(2GB),最近由于任何原因都没有备份。数据库的日志文件增长到11GB左右,据我所知,这是数据库中发生的所有事务和语句。

    我的问题是:

    是什么导致数据库日志文件被刷新? 对大型日志文件进行文件收缩或数据库收缩会产生什么后果?

    3 回复  |  直到 17 年前
        1
  •  9
  •   DavGarcia    17 年前

    备份事务日志后,这些事务将从日志中截断,但操作使用的空间不会自动恢复。如果您正在执行常规事务日志备份,这可能是一件好事。假设该空间用于交易,并且在未来将再次需要。不断缩小事务日志可能会对性能造成不利影响,因为再次需要时,数据库将需要扩展日志。

    因此,要解决您的问题,首先要进行完整备份和事务日志备份。您不需要进入简单模式或单用户模式。然后收缩数据库并每隔几个小时设置一次事务日志备份。在我的服务器上,我每10分钟做一次,但这完全取决于人们需要多长时间来适应他们的环境。监控日志大小的变化,确保留出足够的空间,这样日志就不必定期扩展,再加上一点额外的乐趣。

    当您收缩数据库时,请使用 DBCC SHRINKFILE DBCC SHRINKDATABASE

        2
  •  3
  •   MBoy    17 年前

    易于理解的 删除事务日志。

    一旦您确定您有一个干净的数据库副本(没有丢失的风险),就可以安全地删除事务日志。有一些SQL命令可以执行此操作,但我通常将恢复模式更改为 易于理解的 然后收缩数据库,然后将恢复模式设置回 满的 如果必要的话。

    如果您需要更多信息,请包括您正在使用的SQL版本以及如何执行备份,我将看看是否可以详细介绍您的具体设置。

        3
  •  2
  •   Ken Robertson    17 年前

    通常,我会使所有数据库恢复“简单”,或者将备份事务日志作为定期维护计划的一部分(通常每周一次)。

    推荐文章