在这种情况下如何截断日志

时间:2019-03-17 05:42:57

标签: sql sql-server

最近我遇到了这种情况。

enter image description here

检查点运行失败。 数据库处于简单恢复模型中,无法缩小文件,出现附件错误 日志文件已启用自动增长功能,驱动器具有大量可用空间。  当我们尝试在日志文件中添加空间时,出现附件错误。 我们尝试运行DBCC更新用法,并且SP_resetstattus出现附加错误。

请让我知道是否有解决方法?无需重新启动SQL Server并重建日志文件。

1 个答案:

答案 0 :(得分:1)

根据OP,数据引擎的版本为SQL Server 2012 SP2

上述错误的解决方法:

ALTER DATABASE <Name> SET RECOVERY FULL;
ALTER DATABASE <Name> SET RECOVERY SIMPLE;
USE <Name>
DBCC SHRINKFILE (2, 128)

最后,要使数据库正常运行,请添加另一个事务日志文件:

ALTER DATABASE <Name>
ADD LOG FILE 
(  
    NAME = DB_log_2,  
    FILENAME = 'Full_Path\DB_log2.ldf',  
    SIZE = 128MB,  
    MAXSIZE = UNLIMITED ,  
    FILEGROWTH = 64MB  
);

执行必要的日志收缩后,最终可以删除新文件,原因是: