F_G

许多问题需要说清楚就可以&&走永远比跑来的重要

导航

[Database] Mysql数据库存储引擎

一、InnoDB存储引擎

面向联机事务处理(OLTP),行锁设计,支持外键

默认的隔离级别是REPEATABLE 级别

在索引设计方面的特点:

1、使用B+树索引

2、分为聚集索引和辅助索引

所谓聚集索引是使用主键构造的索引,叶子节点当中存储的是行数据,或者地址。

所谓辅助索引是使用非主键构造的索引,叶子节点当中存储的是相应的主键值。这里的一个非主键可能对应了多个主键。

在实际当中在辅助索引上执行了select之后,会首先在辅助索引上进行查找,然后再在聚集索引上进行查找。

对于一张表来说,聚集索引只有一个,辅助索引可以有多个。

 

二、MyISAM

序列线性访问方法

不支持事务(许多地方,如果不是OLTP,没有这个必要),表锁设计,支持全文检索,缓冲池只缓存索引文件,不缓存数据文件

 

在索引设计方面的特点:

1、使用B+树索引

2、只有辅助索引,没有聚集索引

在辅助索引的叶子节点当中存储的是行地址,而不是主键值

所有的索引都保存在一个文件当中

.MYI

数据也存在一个表当中:

.MYD

 

三、Memory

使用哈希函数索引,而不是B+树索引

 

附:什么地方使用索引?

当取值范围比较大的时候

 

MyISAM和InnoDB的区别:

http://www.cnblogs.com/vicenteforever/articles/1613119.html

 

posted on 2015-11-04 21:28  F_G  阅读(142)  评论(0编辑  收藏  举报