SqlServer 磁盘空间的清理 电脑版发表于:2022/8/1 21:55  >#SqlServer 磁盘空间的清理 [TOC] ```bash ALTER DATABASE InglassConvertFileDBProd SET RECOVERY SIMPLE --清空日志 DBCC SHRINKFILE (InglassConvertFileDBProd_Log, 1) --收缩数据库到1MB ``` tn2>循环删除数据 ```sql DECLARE @cnt INT = 0; WHILE @cnt < 231 BEGIN delete top(100000) FROM [InglassConvertFileDBProd].[cap].[Received] ALTER DATABASE [InglassConvertFileDBProd] SET RECOVERY SIMPLE DBCC SHRINKFILE (InglassConvertFileDBProd_Log, 1) PRINT 'Finish '+convert(varchar(10),@cnt); SET @cnt = @cnt + 1; END; ``` tn2>在清理数据后,发现磁盘空间仍然没有降下来,可以执行如下语句进行清理。 ```sql truncate table [InglassConvertFileDBProd].[cap].[Received] truncate table [InglassConvertFileDBProd].[cap].[Published] DBCC SHRINKDATABASE([InglassConvertFileDBProd]) ```