对于没有索引的表,单标查询几十万数据可能就是瓶颈,通常大型网战单日的就可能会产生几十万甚至几百万的数据,没有索引查询可能会变得非常慢
如果,没有索引,那么将会从表中第一条往下遍历,直到找到该条信息为止。如果有了索引,通过一定的方法进行存储,查询的时候能够快速的找到对应的数据,不必在遍历。
索引就是为了提升查找的速度
1. 什么是索引
缩影就是一种特殊文件,他们包含这对数据表里所有的记录的引用指针,可以理解为书的目录
2. 优点
1)所有的mysql类型都可以被索引,也就是可以给任意字段设置索引
2)大大加快数据的查询
3. 缺点
1)创建索引和维护索引要耗费时间
2)缩影也需要占空间,如果索引过大索引文件可能会比数据文件更快达到上限值
3)当表中数据更新时,索引可能会被重新建立
4. 索引使用的原则
1)索引不要多,一般不超过6个
2)索引是为了提升查询速度,若表中数据经常更新莫要设置索引
3)在同值小的列上不要建立索引,比如性别
5. 索引的分类
1)单列索引(普通索引 NORMAL,唯一索引 UNIQUE,主键索引)
2)组合索引
3)全文索引 FULLTEXT
4)空间索引 SPATIAL
6. 创建索引
1)用mysql工具创建
2)用sql语句创建
3)查询索引 show index from student(表名)
7. 单列索引
一个索引只包含单个列,但是一个表中可以有对个单列索引
8. 组合索引
在表中的多个字段创建一个索引
9. 全文索引
全文索引只有在MyISAM引擎上才能使用,只能在CHAR,VATCHAR,TEXT类型字段上使用全文索引,主要是针对于数据库中的大文本例如text进行的索引查询
10. 空间索引
mysql5.7之后支持了空间索引,而且支持OpenGIS几何数据模型,主要用来进行地理信息系统数据处理的