MSSQL中清除日志文件的方法(mssql 清除LOG)

MSSQL中清除日志文件的方法

随着日志文件的积累,MSSQL系统的容量越来越小,为了流畅运行,我们需要及时清理日志文件。现在我们将介绍MSSQL中清除日志文件的方法。

一般来说,我们需要通过计划任务或者每日检查,定期清理掉日志文件,可以通过数据库管理检查日志空间,如果过大,就需要清理日志文件。

清除日志文件,首先要打开MSSQL Management Studio,方法:点击 Windows 中的“开始”→“SQL Server”,如图所示:

![image](https://pic3.zhimg.com/50/v2-95f098a1b45e1dc25a12f24aae9d9f4a_hd.png)

其次,点击“连接服务器”,输入MSSQL数据库服务器和登录信息,然后点击“连接”,如图所示:

![image](https://pic.zhimg.com/50/v2-ff4cd4b8e54fab4aa2014fe453c74645_hd.jpg)

最后,打开MSSQL数据库,在菜单中,依次选择“数据库”→“管理”→“维护计划”,然后点击“清理日志文件”,即可清除日志文件,如图所示:

![image](https://pic2.zhimg.com/50/v2-f2b148e63cc1d7522e3ce5503a3a9c09_hd.jpg)

当然,如果不喜欢逐一打开数据库,可以使用以下代码执行清理,将对应的数据库名称替换掉:

declare @num nvarchar(16)

declare @DBName nvarchar(128)

set @DBName = N’替换为数据库的名称’

— 计算需要清理的数量,因为一次性最多清理1000个,所以做如下判断

select @num = min(convert(nvarchar(16), [LDF].cnt/1000+1))

from (select count(*) cnt from master.dbo.sysaltfiles

where dbid = db_id(@DBName)) as [LDF]

— 执行清理

while @num>0

begin

DBACkup log @DBName with truncate_only;

set @num = @num – 1;

end

至此,就可以清理MSSQL的日志文件,避免空间的浪费。最后提醒大家,在清理日志文件时需要断开所有与之相关的连接,避免出现意外,否则,会引起MSSQL数据库被锁定。


数据运维技术 » MSSQL中清除日志文件的方法(mssql 清除LOG)