索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的一种数据结构。
索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。
索引优化应该是对查询性能优化最有效的手段了。索引能够轻易将查询性能提高好几个数量级。
索引相当于字典的音序表,如果要查某个字,如果不使用音序表,则需要从几百页中逐页去查。
通过不断地缩小想要获取数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是说,有了这种索引机制,我们可以总是用同一种查找方式来锁定数据。
索引分为普通索引,唯一索引,复合索引,聚簇索引。
索引不是越多越好。数据量小的表不需要建立索引,建立会增加额外的索引开销;数据变更需要维护索引,因此更多的索引意味着更多的维护成本;更多的索引意味着也需要更多的空间(索引也是需要空间来存放的);