亲宝软件园·资讯

展开

MySQL索引

刘Java 人气:0

1 索引的概念

索引(在MySQL中也叫做“键(key)”)是存储引擎用于快速找到记录的一种数据结构,这也是索引最基本的功能。

索引对于良好的性能非常关键。数据量越大时,索引对性能的影响也越重要,好的索引可以将查询性能提高几个数量级。在数据量较小且负载较低时,不恰当的索引对性能的影响可能还不明显,但是在数据量逐渐增大时,糟糕的索引会使MySQL的性能急剧的下降。

索引优化是查询性能优化最有效的手段。

如果想要在一本书中找到某个特定主题,一般会先看书的目录,找到对应的页码,然后直接翻到对应的页码即可查看。在MySQL中,存储引擎用类似的方法使用索引,首先在索引中找到对应的值,然后根据匹配的索引记录找到对应的数据行。简单的说,数据库索引类似于书前面的目录,能加快数据库的查询速度。

如下查询:

select name from user where user_id = 5  

如果user_id列上建有索引,则MySQL将使用该索引找到user_id 为 5的行,即MySQL现在索引上按值进行查找,然后返回包含该值的数据行。

索引可以一个或多个列的值,如果索引包含多个列,那么列的顺序也很重要,因为MySQL只能高效地使用最左前缀列。

2 索引的类型

按照功能逻辑区分,MySQL目前主要有以下索引类型:

主键索引 :

普通索引:

唯一索引:

全文索引:

前缀索引:

组合索引:

空间索引 :

加载全部内容

相关教程
猜你喜欢
用户评论