【问题标题】:Cannot shrink transaction log,no matter what I do无法缩小事务日志,无论我做什么
【发布时间】:2010-12-15 16:52:20
【问题描述】:

我有一个 tlog 已增长到 4.5 GB 的数据库。 数据库处于完全恢复模式,我尝试了几个事务日志备份以及 DBCC 收缩文件。 而且不会缩水。 有人有什么想法吗?

有几个事务的状态 =2,但数据库中没有活动事务。我想知道为什么它们仍然显示为 status=2。

【问题讨论】:

  • 我为大的日志转储道歉。
  • 请删除转储,因为我无法编辑您的帖子。

标签: sql-server sql-server-2008 transaction-log


【解决方案1】:
  • 使用DBCC OPENTRAN 获取未结交易
  • 中密度纤维板有多大?如果是 5GB 或以上,我会留下日志文件
  • 也许日志文件需要他的大
  • 长大后又会分片
  • 查看Paul Randall 的网站。他写了很多t-log代码……

最后,如果你真的卡住了,我会考虑附加/分离来删除日志文件。但是,这只是在您绝望的情况下...

【讨论】:

  • 注意:分离数据库,删除日志文件,然后尝试仅附加 MDF 并重建日志可能会使您的数据库处于不一致甚至损坏的状态。
【解决方案2】:

如果您实际上对事务日志的内容不感兴趣,请运行命令

BACKUP LOG dbname WITH NO_LOG

然后运行 ​​DBCC SHRINKFILE

编辑:没有意识到 2008 已经删除了这些 - 我们只是切换到它。在 2008 中,您必须暂时将恢复模式设置为简单,然后运行 ​​DBCC SHRINKFILE,然后再次将恢复模式恢复为完全。 代码在这里:

http://www.uhleeka.com/blog/2009/08/sql-2008-shrink-log-file-size-with-no_lo/

【讨论】:

  • 在 SQL Server 2008 中删除了 WITH NO_LOG 和 WITH TRUNCATE_ONLY 命令。
  • 我试过了,没有帮助。事实上,当日志由于数据导入而变得非常大时,数据库很简单。所以我切换到完整,做了完整和 tlog 备份,然后运行 ​​dbcc 收缩文件,所有这些都没有帮助。
【解决方案3】:

您很可能有以下情况之一:

  • 未提交的事务
  • 孤立事务
  • 长时间运行的操作(如索引碎片整理/重建、创建索引、checkdb、长时间运行的查询等)
  • 如果您使用复制,未复制的事务

还有其他一些可能性,但this kb article 概述了大多数/所有可能的原因以及如何确定它们是否/在哪里/它们是什么,以及来自this kb articlethis kb article 的一些额外的好信息(最后一个有点过时了,但大多数仍然适用)。

【讨论】:

    【解决方案4】:

    如果是 SQL,则对数据库进行完整备份,然后备份事务日志,然后收缩数据库。出于某种原因,它喜欢在截断日志之前进行完整备份。您也许可以摆脱差异,但看看第一部分是否有效。

    【讨论】:

    【解决方案5】:

    我们有一项从另一个链接服务器写入数据库的工作。 它正在做一些巨大的删除。 我们优化了该作业,并且能够成功地将日志文件缩小到 100MB。

    谢谢!

    【讨论】:

      【解决方案6】:

      在我的例子中,数据库被标记为复制,即使它看起来不像。

      运行以下命令清除复制,shrinkfile 命令按预期工作。

      1) sp_replicationdboption 'DatabaseName','publish','false'

      2) sp_replicationdboption 'DatabaseName','merge publish','false'

      3) sp_removedbreplication '数据库名称'

      参考:https://social.msdn.microsoft.com/Forums/sqlserver/en-US/cc853b02-6f00-49d6-8419-9ad1cb9dbfb5/cant-detachdelete-migrated-db-mistakenly-marked-for-replication?forum=sqlreplication

      【讨论】:

        猜你喜欢
        • 2019-09-05
        • 2012-03-11
        • 1970-01-01
        • 2023-01-30
        • 2018-05-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-22
        相关资源
        最近更新 更多