SQL Server日志文件过大 大日志文件清理方法 不分离数据库
SQL Server日志文件过大,随着时间的推移会占用很大的存储空间 ,例如几G、几十个G、上百G的大日志需要清理。 如果长时间不清除,就会影响数据存储和数据库性能、效率。 SQL Server数据库大日志文件清理方法 ,网上提供了很多清理日志的需要【先分离数据库——〉删除日志文件——〉附加数据库】 的方法,此方法风险太大,执行过程也比较久,有时候也会出现分离不成功的现象,导致数据库无法正常使用。另外在分离过程中,数据库处于脱机状态,相当于操作过程中业务是处于暂停状态的。万一操作失败分离不成功,很有可能导致业务无法继续开展。下面的这个方式是不需要做数据库分离和附加操作的,更安全、更高效。
SQL Server 收缩清空日志方法:
1.在SQL Server 2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完整模式,一定必务要再改回完整模式,不然数据库就不支持时间点备份了。
1).选择数据库–属性—选项—恢复模式–选择简单。
2).收缩数据库后,再调回完整。
2.(推荐)可以通过以下SQL 语句脚本命令直接操作,一步到位:
【将下面脚本中的 要清理的数据库名称 改成你真实的数据库名称即可】
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
90多G的日志文件打开3分多钟清理完毕!