MySQL 索引

Posted 雪剑无影

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 索引相关的知识,希望对你有一定的参考价值。

几乎所有的索引都是建立在字段之上.

索引: 系统根据某种算法, 将已有的数据(未来可能新增的数据),单独建立一个文件: 文件能够实现快速的匹配数据, 并且能够快速的找到对应表中的记录. 

索引的意义

  1. 提升查询数据的效率

  2. 约束数据的有效性(唯一性等)

增加索引的前提条件: 索引本身会产生索引文件(有时候有可能比数据文件还大) ,会非常耗费磁盘空间.

如果某个字段需要作为查询的条件经常使用, 那么可以使用索引(一定会想办法增加);

如果某个字段需要进行数据的有效性约束, 也可能使用索引(主键,唯一键)

 

mysql中提供了多种索引

  1. 主键索引: primary key

  2. 唯一索引: unique key

  3. 全文索引: fulltext index

  4. 普通索引: index

  5. 外键索引: foreign key

 

全文索引: 针对文章内部的关键字进行索引

全文索引最大的问题: 在于如何确定关键字

英文很容易: 英文单词与单词之间有空格

中文很难: 没有空格, 而且中文可以各种随意组合(分词: sphinx)

 

以上是关于MySQL 索引的主要内容,如果未能解决你的问题,请参考以下文章

mysql索引类型解释

mysql 索引

mysql索引(九)索引合并

mysql覆盖索引和联合索引的区别

mysql---索引优化

MySQL索引