sqlserver服务器的硬盘空间只有几个G了,尝试清理下表占用空间
SELECT a.name, b.rows
FROM sysobjects AS a INNER JOIN
sysindexes AS b ON a.id = b.id
WHERE (a.type = 'u') AND (b.indid IN (0, 1))
ORDER BY b.rows DESC
看了下排名前几的表,条数很多(此处犯了一个错误,不应该查条数,而应该查表占用空间)
尝试删除一些历史的记录数,网上查了下,直接根据条件删影响太大,所以循环删除,每次删除1W条,由于这是个按天分区的分区表,所以再加上分区,sql如下:
set rowcount 0;
declare @count int;
set @count = datepart(dayofyear,'2017-08-05');
while 1 = 1
begin
while 1 = 1
begin
delete top(10000) from custom_file_given_Index_log where day =