SQL SERVER 日志文件过大导致磁盘空间不足产生错误:事务日志已满,起因为"LOG_BACKUP"。

转自:https://www.cnblogs.com/haibing0107/p/10836045.html

https://bbs.51cto.com/thread-1023360-1.html

根本的解决办法应该是根据日志增长速度分配好足够的磁盘空间,或者通过检查修改控制一下日志的增长速度。

比较紧急处理且对日志保留不进行要求的话,可以按如下操作直接主动缩小日志文件体积:

USE[master]
GO
ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE   --简单模式
GO
USE 要清理的数据库名称
GO
DBCC SHRINKFILE (N'要清理的数据库名称_log' , 2, TRUNCATEONLY)  --设置压缩后的日志大小为2M,可以自行指定
GO
USE[master]
GO
ALTER DATABASE 要清理的数据库名称 SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE 要清理的数据库名称 SET RECOVERY FULL  --还原为完全模式
GO
原文地址:https://www.cnblogs.com/xwgli/p/13711733.html