结论:唯一索引不一定比普通索引快,要分情况讨论
- 查询时: 未使用limit1的情况,唯一索引匹配到一条数据后即返回;普通索引回继续匹配下一条数据,发现不匹配后才返回。
从这里看,唯一索引比较普通索引少了一次匹配过程,领先这个微乎其微的消耗。 - 更新时: 在更新时,普通索引将记录放在change buffer中即执行完毕;唯一索引还要校验唯一性,必须将数据页读入内存确定没有冲突,然后才能继续操作;
所有对于写多读少的情况,普通索引使用change buffer,减少了对 磁盘的访问次数,性能更高。