前缀索引
当索引的字符串列很大时,创建的索引也就变得很大,为了减小索引体积,提高索引的扫描速度,就用索引的前部分字串索引,这样索引占用的空间就会大大减少,并且索引的选择性也不会降低很多。
列的前缀的长度选择很重要,又要节约索引空间,又要保证前缀索引的选择性要和索引全长度选择性接近。
覆盖索引
即从辅助索引中就可以得到要查询的记录,而不需要查询聚簇索引中的记录(显然,聚簇索引是一种覆盖索引,因为聚簇索引中包含了数据行的全部数据)
举例说明:例如student表中有一个联合索引(name,age),如果MySQL只需要访问这两列,就可以使用这个索引做覆盖。
当执行Select name,age from student查询语句时,可以从索引中获取要查询的数据,不用再回表查询。