如果我的疑问不够具体,请告诉我遗漏了什么细节。我们在整个数据库上运行每天的存档操作,在那里保存过去30天的数据。我们正在删除100个记录批次的数据。对于一个拥有最大记录(就大小而言)的特定表,即使在索引维护操作之后,也要花费大约3-5小时才能删除所有200万条旧记录。另外,删除该特定表将导致PLE下降。我的问题是,如何加快这一过程,避免PLE下降?
发布于 2018-04-11 06:14:00
对于一个拥有最大记录(按大小计算)的特定表,删除所有200万条旧记录大约需要3到5个小时。
我们需要更多的细节,比如表结构,以及数据类型和索引细节。
试试相反的方法。
保存过去30天的数据,并截断旧表。
例如(步骤1),
将@CurDate datetime=getdate() select *从ExistingTable中选择进入NewTable,其中datecol >= @CurDate和datecol <= dateadd(day,-30,@CurDate)
https://dba.stackexchange.com/questions/203572
复制相似问题