这篇文章主要介绍了sqlserver 实现收缩数据库日志操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
说明:
收缩日志的原因有很多种,有些是考虑空间不足,有些则是应用程序限制导致的。
--将“恢复模式”设置为“简单”
ALTER DATABASE xszzxt_test SET RECOVERY SIMPLE
GO
--收缩日志文件大小到10M
DBCC SHRINKFILE (N'xszzxt_test_log' , 10, TRUNCATEONLY)
GO
--将“恢复模式”设置为“完整”
ALTER DATABASE xszzxt_test SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE xszzxt_test SET RECOVERY FULL
GO
补充:SQL Server收缩数据库日志文件失败的解决办法
由于数据库日志文件过大导致磁盘不够用,我们采取的解决办法是收缩数据库日志文件,但是有时候执行收缩操作的时候不成功也不报错,这就头疼了:
先看下,如何做收缩操作的吧:
将文件收缩到最小:
也可以写SQL执行:
DBCC SHRINKFILE('Back_up_log',1)
如果执行完以上操作发现数据库日志文件的大小依旧没变,那么试试如下操作之后再试试收缩操作呢
这个操作就是把恢复模式改成“简单”,我之前是“完整”,没有完成收缩操作,改成简单之后收缩操作完成了
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。