1.Innodb
1.1 聚簇索引
InnoDB中,聚簇索引就是“表”,所以不像MyIsAM那样需要独立的行存储。
聚簇索引的每一个叶子节点都包含了主键值,事务ID,用于事务和MVCC的回滚指针以及所有的剩余列。如果主键时一个前缀索引,InnoDB会包含完整的主键列和剩下的其他列。
聚簇索引并不是一种单独的索引类型,而是一种数据存储方式。
聚簇索引的索引列是主键值,如果没有,MySQL会自动创建。
1.2 二级索引
InnoDB的二级索引和聚簇索引不同,InnoDB二级索引的叶子节点中存储的不是行指针,而是主键值,指向聚簇索引。
1.3 图解
2. MyISAM
MyISAM的数据按照插入的顺序存储在磁盘上。
2.1主键索引
按照主键进行排序,叶子节点中存储了主键值及行号。
2.2 普通索引
跟主键索引一样,叶子节点根据索引列值进行排序,叶子节点张红存储了列值及行号。