首页 > 数据库技术 > 详细

[Database] Mysql数据库存储引擎

时间:2015-11-04 22:38:55      阅读:303      评论:0      收藏:0      [点我收藏+]

一、InnoDB存储引擎

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

默认的隔离级别是REPEATABLE 级别

在索引设计方面的特点:

1、使用B+树索引

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

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

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

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

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

 

二、MyISAM

序列线性访问方法

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

 

在索引设计方面的特点:

1、使用B+树索引

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

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

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

.MYI

数据也存在一个表当中:

.MYD

 

三、Memory

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

 

附:什么地方使用索引?

当取值范围比较大的时候

 

[Database] Mysql数据库存储引擎

原文:http://www.cnblogs.com/deepblueme/p/4937421.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!