看一下mysql官方文档:https://dev.mysql.com/doc/refman/5.7/en/create-index.html ,
从上面的图中可以得知,mysql 是支持hash索引的,但支持和不支持又和具体的存储引擎有关系。从图中
看到InnoDB是支持Btree索引,这是我们众所周知的。
我们具体查一下InnoDB文档那一部分:https://dev.mysql.com/doc/refman/5.7/en/innodb-introduction.html 。
表中表明,InnoDB不支持hash索引,但又给出了一个特殊的解释,
【MySQL技术内幕InnoDB存储引擎.姜承尧.扫描版】也提到了这点
mysqlInnoDB存储引擎 是支持hash索引的,不过,我们必须启用,hash索引的创建由InnoDB存储引擎引擎自动优化创建,我们干预不了。