mysql百万级别数据的删除操作

关于索引:由于索引需要额外的维护成本,因为索引文件是单独存在的文件,所以当我们对数据的增加,修 改,删除,都会产生额外的对索引文件的操作,这些操作需要消耗额外的IO,会降低增/改/删的执行效率。所 以,在我们删除数据库百万级别数据的时候,查询MySQL官方手册得知删除数据的速度和创建的索引数 量是成正比的。

1. 所以我们想要删除百万数据的时候可以先删除索引(此时大概耗时三分多钟) 1. 所以我们想要删除百万数据的时候可以先删除索引(此时大概耗时三分多钟)
2. 然后删除其中无用数据(此过程需要不到两分钟) 2. 然后删除其中无用数据(此过程需要不到两分钟)
3. 删除完成后重新创建索引 ( 此时数据较少了 ) 创建索引也非常快,约十分钟左右。 3. 删除完成后重新创建索引 ( 此时数据较少了 ) 创建索引也非常快,约十分钟左右。
4. 与之前的直接删除绝对是要快速很多,更别说万一删除中断 , 一切删除会回滚。那更是坑了。 4. 与之前的直接删除绝对是要快速很多,更别说万一删除中断 , 一切删除会回滚。那更是坑了。
经验分享 程序员 微信小程序 职场和发展