Myisam索引和Innodb索引的区别
Posted codeAB
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Myisam索引和Innodb索引的区别相关的知识,希望对你有一定的参考价值。
首先你要知道;
无论是Myisam和Innodb引擎,如果在建表的时候没有显示的定义一行主键列的话,他内部都会自动创建一个隐藏的主键索引;
主键索引以外的索引假设称为次索引;首先Myisam和Innodb两个都是默认采用的btree索引,可以脑补一颗二叉树;
myisam引擎的数据在物理磁盘上是按照顺序存储的,而innodb引擎的表数据是随机分布的;
myisam的主键索引的叶子节点只存放数据在物理磁盘上的指针,其他次索引也是一样的;
innodb的主键索引的叶子节点下面直接存放数据,其他次索引的叶子节点指向主键id;
索引覆盖与回行,如果要查找的数据恰好是索引列,那么就不用在去物理磁盘上去找数据了,就是不用回行,称为索引覆盖;
以上是关于Myisam索引和Innodb索引的区别的主要内容,如果未能解决你的问题,请参考以下文章