您的位置:首页 > 数据库

SQL Server2008定期清理日志

2015-11-26 10:58 253 查看
日志记录了对数据库的操作,如果前端程序频繁操作数据库,会使数据库日志越来越大。日志过大会影响系统运行,甚至造成前端程序崩溃。应该定期压缩清理,可以在代理中添加一个作业,因为有时如果日志被占用,清理会失败,建议一周清理3次,以保证至少有1次清理成功。

下面的作业代码将日志压缩至20M:

USE [master]  
GO  
ALTER DATABASE recl SET RECOVERY SIMPLE WITH NO_WAIT  
GO  
ALTER DATABASE recl SET RECOVERY SIMPLE  
GO  
USE recl  
GO  
DBCC SHRINKFILE (N'recl_log' , 20,TRUNCATEONLY)  
GO  
USE [master]  
GO  
ALTER DATABASE recl SET RECOVERY FULL WITH NO_WAIT  
GO  
ALTER DATABASE recl SET RECOVERY FULL  
GO


其中recl是数据库名称,recl_log是日志名称。日志名称可以用下面代码来查看:

--查询指定数据库的日志文件名称  
USE recl_yd   
GO  
SELECT name FROM SYS.database_files WHERE type_desc='LOG'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: