【问题标题】:Sql Server ldf files growing very fastSql Server ldf 文件增长非常快
【发布时间】:2013-08-26 14:28:00
【问题描述】:

我使用的是 Sql Server 2012。
我的 LDF 文件增长得非常快。
例如,
如果我尝试将 3-4 列的数据类型从 varchar(10) 更改为 varchar(5),则会消耗几乎 4-5 GB 的磁盘空间。

甚至,当我运行简单的插入查询时,也会消耗大量的磁盘空间。

请告诉我 ldf 文件增长如此之快的可能原因是什么?
我该如何解决这个问题?

谢谢。

【问题讨论】:

标签: sql-server database sql-server-2012


【解决方案1】:

所以,我终于有机会解决这个问题了。
实际上, 当我执行事务日志备份时,它不会从 ldf 文件中释放空间。
所以,
解决它,
首先,我对数据库进行了完整备份。
然后尝试收缩数据库(不是文件)。
当我收缩数据库时,ldf 文件的空间被释放。

就是这样,解决了我的问题。

Visit This link 了解 Aaron Bertrand

建议的更多简要信息

【讨论】:

  • @MikeDarwish 不确定,但这就是当时对我有用的方法。必须有一些更好的解决方案。
【解决方案2】:

如果您在完全恢复模式下运行,则需要执行定期事务日志备份以减缓日志增长。

USE master
GO
SELECT   a.name, 
         MAX(b.backup_finish_date) AS backup_finish_date 
FROM     master.sys.sysdatabases a 
         LEFT OUTER JOIN msdb..backupset b 
         ON b.database_name = d.name 
         AND b.type          = 'L' 
GROUP BY a.name 
ORDER BY backup_finish_date DESC 

此外,这些是导致事务日志增长的一些因素: http://msdn.microsoft.com/en-us/library/ms345414.aspx

此外,此链接可以帮助您进一步控制日志文件大小:http://blog.sqlauthority.com/2010/09/20/sql-server-how-to-stop-growing-log-file-too-big/

【讨论】:

  • 所以我尝试执行事务日志备份...但它不会影响 ldf 文件大小。 ldf 文件仍然具有与以前相同的大小。但是,我应该截断 ldf 文件。 (虽然我选择了 turncate 事务日志选项)... :(
  • 另外,执行定期事务日志备份会减慢日志增长,但 ldf 文件的大小保持不变... :(
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-21
  • 1970-01-01
  • 2013-06-10
  • 2010-11-25
  • 2011-03-17
  • 1970-01-01
相关资源
最近更新 更多