百万级别或以上的数据如何删除
关于索引:由于索引需要额外的维护成本,因为索引文件是单独存在的文件,所以当我们对数据的增加,修改,删除,都会产生额外的对索引文件的操作,这些操作需要消耗额外的IO,会降低增/改/删的执行效率。所以,在我们删除数据库百万级别数据的时候,查询MySQL官方手册得知删除数据的速度和创建的索引数量是成正比的。
-
所以我们想要删除百万数据的时候可以先删除索引(此时大概耗时三分多钟)
-
然后删除其中无用数据(此过程需要不到两分钟)
-
删除完成后重新创建索引(此时数据较少了)创建索引也非常快,约十分钟左右。
-
与之前的直接删除绝对是要快速很多,更别说万一删除中断,一切删除会回滚。那更是坑了。
作者:师长学不动了
链接:https://juejin.im/post/5ba8f9906fb9a05cdc498acd
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。