MS Sql Server清理数据库日志作业设置方法

MS Sql Server清理数据库日志作业设置方法

问题:

在一些情况下当使用Sql Server数据库的时候,会因为日志已满而导致产品不能启动。
例如OpManager的stderr_0日志中。

解决方法:

执行下面的语句来清理数据库日志。
USE[master]
    GO
    ALTER DATABASE OpManagerDB  SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    ALTER DATABASE OpManagerDB  SET RECOVERY SIMPLE   --简单模式
    GO
    USE OpManagerDB  
    GO
    DBCC SHRINKFILE (N'OpManagerDB_log' , 11, TRUNCATEONLY)
    GO
    USE[master]
    GO
    ALTER DATABASE OpManagerDB  SET RECOVERY FULL WITH NO_WAIT
    GO
ALTER DATABASE OpManagerDB  SET RECOVERY FULL  --还原为完全模式
以上红色按实际 的数据库名来替换

蓝色部分使用下面步骤1的说明中的字符替换。

添加作业:

为了避免问题重复出现,把这个语句添加为作业,定期执行。方法如下:
1. 确认日志文件名称  
打开Sql Server Management Studio,展开数据库,找到当前使用的数据库。右键点击属性


 点击文件,查看文件类型为“日志”的“逻辑名称”,替换到上面语句中的蓝色部分。

2. 添加作业
1) 点击“SQL Server代理”,右键菜单,点击“新建作业”

2)输入作业名称,点击“步骤”,点击“新建”按钮。选择当前使用的数据库
  把上面修改好的语句复制过来,如下图所示。点击确定。


3)设置计划。
在新建作业窗口点击“计划”,点击“新建”按钮。

设置每天3点执行。

完成配置。