我正在使用 Sql Server 2012。
我的LDF文件增长得非常快。
例如,
如果我尝试将 3-4 列的数据类型从 varchar(10) 更改为 varchar(5),则消耗了将近4-5 GB的磁盘空间。
甚至,当我运行简单的插入查询时,也会消耗大量的磁盘空间。
请告诉我 ldf 文件增长如此之快的可能原因是什么?
我该如何解决这个问题?
谢谢。
我正在使用 Sql Server 2012。
我的LDF文件增长得非常快。
例如,
如果我尝试将 3-4 列的数据类型从 varchar(10) 更改为 varchar(5),则消耗了将近4-5 GB的磁盘空间。
甚至,当我运行简单的插入查询时,也会消耗大量的磁盘空间。
请告诉我 ldf 文件增长如此之快的可能原因是什么?
我该如何解决这个问题?
谢谢。
所以,最后我有机会解决这个问题。
实际上,当我执行事务日志备份时,它并没有从 ldf 文件中释放空间。
所以,
要解决它,
首先,我对数据库进行了完整备份。
然后尝试收缩数据库(不是文件)。
当我收缩数据库时,ldf 文件的空间被释放。
这就是什么,解决了我的问题。
根据Aaron Bertrand的建议,访问此链接以获取更多简要信息
如果您在完全恢复模式下运行,则需要执行定期事务日志备份以减缓日志增长。
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-growth-log-file-too-big /