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数据库被锁定。