Sql Server手动清理日志文件或新建作业定期自动清理日志文件

最近一个程序出了问题,新数据插不进数据库,但并无报错,经检查发现是数据库服务器中数据库日志文件过大占满内存所致,所以手动清理了一下日志文件,并新建了一个清理作业,以后每个月自动清理日志文件:

清理日志文件SQL语句:

USE [master]

GO

ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT

GO

ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE --简单模式

GO

USE 数据库名称

GO

DBCC SHRINKFILE (N'数据库日志文件逻辑名称' , 2, TRUNCATEONLY) --设置压缩后的日志大小为2M,可以自行指定;数据库日志文件逻辑名称为数据库属性中的逻辑名称,通常是数据库名称_log

GO

USE [master]

GO

ALTER DATABASE 数据库名称 SET RECOVERY FULL WITH NO_WAIT

GO

ALTER DATABASE 数据库名称 SET RECOVERY FULL --还原为完全模式 GO

新建作业自动清理:

1.展开SQL Server 代理,右键新建作业

 

 2.填写作业名称,所有者和类别一般直接默认就行

 3.点击左侧步骤选项卡,点击新建按钮新建步骤

填写步骤名称,类型默认T-SQL,选择需要清理日志文件的数据库,将数据库日志清理语句粘贴到命令输入框

 

如果需要清理多个数据库的日志文件,重复新建多个步骤即可

4.点击左侧计划选项卡,点击新建按钮新建计划

 

 填写计划名称,设置执行频率

全部确定提交后,作业就开始生效了

posted @ 2023-01-30 16:08  千万少女的梦  阅读(561)  评论(0)    收藏  举报