Sql server Sql Server ldf文件增长非常快
我正在使用Sql Server 2012。Sql server Sql Server ldf文件增长非常快,sql-server,database,sql-server-2012,Sql Server,Database,Sql Server 2012,我正在使用Sql Server 2012。 我的LDF文件增长非常快。 例如, 如果我尝试将3-4列的数据类型从varchar(10)更改为varchar(5),则会消耗几乎4-5GB的磁盘空间 甚至,当我运行简单的insert查询时,也会消耗大量的磁盘空间 请告诉我ldf文件增长如此之快的可能原因是什么? 我如何解决这个问题 谢谢。如果在完全恢复模式下运行,则需要定期执行事务日志备份,以减缓日志增长 USE master GO SELECT a.name, MAX(b.
我的LDF文件增长非常快。
例如,
如果我尝试将3-4列的数据类型从varchar(10)更改为varchar(5),则会消耗几乎4-5GB的磁盘空间 甚至,当我运行简单的insert查询时,也会消耗大量的磁盘空间 请告诉我ldf文件增长如此之快的可能原因是什么?
我如何解决这个问题
谢谢。如果在完全恢复模式下运行,则需要定期执行事务日志备份,以减缓日志增长
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
此外,以下是导致事务日志增长的一些因素:
此外,此链接还可以帮助您进一步控制日志文件大小:因此,我终于有机会解决此问题。
事实上 当我执行事务日志备份时,它不会从ldf文件中释放空间。
所以,
要解决它,
首先,我对数据库进行完整备份。
然后尝试收缩数据库(而不是文件)。
当我收缩数据库时,ldf文件中的空间被释放 这就解决了我的问题
有关Aaron Bertrand建议的更简短的详细信息,请参见我尝试执行事务日志备份。。。但这并不影响ldf文件的大小。ldf文件的大小仍与以前相同。但是,我应该截断ldf文件。(尽管我选择了turncate和transaction log选项)…:(另外,执行定期事务日志备份会降低日志增长速度,但ldf文件的大小保持不变……:(@MikeDarwish不确定,但这正是当时对我有效的方法。一定有更好的解决方案。