B+树索引
B+树索引适合全键值、键值范围、键前缀查找
跟oracle的b+数是一个结构。
聚簇索引的叶节点存储数据页,其结构是一致的。
哈希索引
哈希索引基于哈希表实现,只有精确匹配索引所有列的查询才有效。对于每一行,存储引擎都会对索引列计算hash code,哈希索引存放hash code和行指针
哈希索引不等于哈希连接
Innodb hash索引支持表
Innodb应该是不支持手动创建hash索引,仅支持 Adaptive Hash Index
Adaptive Hash Index
InnoDB存储引擎会监控对表上索引的查找,如果观察到建立哈希索引可以带来速度的提升,则建立哈希索引,所以称之为自适应(adaptive) 的哈希索引
innodb_adaptive_hash_index
Property | Value |
Command-Line Format | --innodb-adaptive-hash-index[={OFF|ON}] |
System Variable | innodb_adaptive_hash_index |
Scope | Global |
Dynamic | Yes |
Type | Boolean |
Default Value | ON |
或者--skip-innodb-adaptive-hash-index启动server时选择关闭自适应哈希
空间数据索引R-tree
MyISAM支持空间索引。GIS支持较好的是postgre的postGIS
全文索引
查询文本中的关键词,类似oracle中的全文索引
其他索引类别
第三方存储引擎支持的索引