清理SQL Server数据库日志

来源:这里教程网 时间:2026-03-02 10:37:38 作者:

--辅助表:数据库文件信息表
--select * from dbo.sysfiles
--select * from dbo.sysfiles1 use DBname --DataBaseName declare @SizeLimit int --定义变量:日志文件增长大小限制
declare @SizeCurrent int --定义变量:日志文件当前大小值 --设置日志文件大小限制值为5000MB
set @SizeLimit=5000
--print @SizeLimit --获取当前日志文件大小信息
--说明:其中字段[size]的值为页数,每页大小为8KB,所以实际大小为[size]*8/1024;
--注意条件where fileid=2以实际情况而定;
select @SizeCurrent=[size]*8/1024 from dbo.sysfiles where fileid=2
--print @SizeCurrent --如果当前日志实际大小 大于 指定限制值,截断日志
if @SizeCurrent>@SizeLimit
Begin             --print'DoSth.'
             backup log DBname with no_log   --注意数据库名须与前面一致
             dbcc shrinkdatabase(DBname,10) --参数10视实际情况自定 End


--注:有三处DBname需改成实际的库名

相关推荐