SQL Server 数据库事务日志文件大小急剧增加

Posted

技术标签:

【中文标题】SQL Server 数据库事务日志文件大小急剧增加【英文标题】:SQL Server Database Transaction Log File size increased dramatically 【发布时间】:2016-09-05 19:46:46 【问题描述】:

备份后,我注意到 SQL Server 数据库事务日志文件的大小急剧增加。我们有 10 GB 的可用空间,现在我只能看到 9 MB。

我应该在哪里检查以找到此问题的根本原因?

【问题讨论】:

log_reuse_wait in sys.databases 说什么?另见dba.stackexchange.com/q/29829/3690 【参考方案1】:

我要检查的第一件事是数据库中是否有打开的事务。 事务日志备份只截断最旧的打开事务。

我将 Adam Machanic 的 sp_WhoIsActive 与 @get_transaction_info = 1 开关一起使用。 http://sqlblog.com/

你也可以使用:

SELECT  * FROM sys.dm_tran_active_transactions tat
INNER JOIN sys.dm_exec_requests er ON tat.transaction_id = er.transaction_id
CROSS APPLY sys.dm_exec_sql_text(er.sql_handle);

DBCC OPENTRAN() 并不总是向我显示所有打开的事务。

【讨论】:

以上是关于SQL Server 数据库事务日志文件大小急剧增加的主要内容,如果未能解决你的问题,请参考以下文章

关于SQL Server事务日志的问题汇总

如何管理 SQL Server 日志大小

SQL SERVER 日志已满的处理方法 (转)

SQL SERVER 日志已满的处理方法 (转)

SQL Server:如何增加事务日志的大小?

SQL Server 压缩日志及数据库文件大小