使用免费日志空间

时间:2014-11-20 02:59:47

标签: sql sql-server sql-server-2008 sql-server-2005 sql-server-2008-r2

我执行了dbcc sqlperf(logspace),看到某些数据库的日志空间使用率超过90%。

如果达到100%会发生什么? 我该怎么做才能减少数据库的日志空间使用?

1 个答案:

答案 0 :(得分:-1)

  

如果达到100%会发生什么?

如果设置了FILEGROWTH选项,那么它将以该设置速率增长。此外,recovery model确定检查点之前的事务日志条目会发生什么。

simple Mode中,当检查点发生但是所有交易数据都丢失且无法回复时,它们将被删除。在其他恢复模型中,在完全备份之前不会删除事务日志条目。

您也可以使用DBCC SHRINKFILE缩小日志大小。要减小物理日志文件的物理大小,必须缩小日志文件。如果您知道事务日志文件包含您不需要的未使用空间,这将非常有用。

DBCC SHRINKFILE('dbname_log', 1);

要减小文件的物理大小,您可能需要压缩文件。有关相同内容的更多信息,请参阅MSDN Documentation

您还希望在此帖Aaron Bertrand answer

上看到How do you clear the SQL Server transaction log?