你的位置:首页 > 数据库

[数据库]清除系统日志及数据库(sql server)日志最佳实践


在一个项目中遇到的问题:系统日志过大,后来用delete语句删除了(相当的慢),结果数据库日志又变成很大了(差不多10G),所以又得把数据库日志删除。

方法:

--备份系统中的部份日志
--SELECT * INTO #keep FROM CcsSystemLog WHERE logTime > '2011-12-31'
--TRUNCATE TABLE CcsSystemLog
--INSERT CcsSystemLog SELECT * FROM #keep
--drop table #keep


--清空数据库日志(也可以使用数据库分离-->删除日志--->再附加数据的方法)
--DUMP TRANSACTION 数据库名 WITH NO_LOG;
--DBCC ShrinkFile(‘数据库名_log’, 1);


--这一句是收缩数据文件和日志文件
--dbcc shrinkdatabase(数据库名)