我有一个包含 1,000,000 条记录的表,我正在运行一条删除约 70 万行的语句。 auto-increment-index 当然仍然是 1,000,001。之后的最高主键,例如 40,000。
删除如此大量的行后,我应该手动将索引设置回 40,001 还是以任何方式优化表?或者 MySQL 在插入新行和之后在 select 语句中使用索引时不关心这个巨大的差距(在速度方面)?
最佳答案
MySQL manual说:
OPTIMIZE TABLE should be used if you have deleted a large part of a table or if you have made many changes to a table with variable-length rows
但是不要重置主键,它会把事情搞砸。 INT 数据类型(大概)有很大的空间可以从 1M 增长。
就查询速度而言,索引值是 1 000 000 还是 1 000 000 000 并不重要。
关于mysql - 我应该在删除多行后重置表索引/优化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899218/