码迷,mamicode.com
首页 > 数据库 > 详细

Myisam索引和Innodb索引的区别

时间:2017-02-11 17:03:18      阅读:480      评论:0      收藏:0      [点我收藏+]

标签:存储   主键索引   没有   数据   btree   区别   自动   隐藏   myisam   

首先你要知道;

无论是Myisam和Innodb引擎,如果在建表的时候没有显示的定义一行主键列的话,他内部都会自动创建一个隐藏的主键索引;

 主键索引以外的索引假设称为次索引;首先Myisam和Innodb两个都是默认采用的btree索引,可以脑补一颗二叉树;

myisam引擎的数据在物理磁盘上是按照顺序存储的,而innodb引擎的表数据是随机分布的;

 

myisam的主键索引的叶子节点只存放数据在物理磁盘上的指针,其他次索引也是一样的;

innodb的主键索引的叶子节点下面直接存放数据,其他次索引的叶子节点指向主键id;

 

索引覆盖与回行,如果要查找的数据恰好是索引列,那么就不用在去物理磁盘上去找数据了,就是不用回行,称为索引覆盖;

Myisam索引和Innodb索引的区别

标签:存储   主键索引   没有   数据   btree   区别   自动   隐藏   myisam   

原文地址:http://www.cnblogs.com/codeAB/p/6389199.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!