什么是索引 #
==索引用于快速找出在某个列中有一特定值的行,避免全表扫描==
MySQL索引,默认是B+树索引
查询表中的索引 #
show index from 表名
索引的优缺点 #
优点:
1、所有的MySQL列类型(字段)都可以被索引,也就是可以给任意字段设置索引
2、大大加快数据的查询速度
缺点:
1、创建索引和维护索引要耗费时间,并且随着数据量的增加所耗费的时间也会增加
2、索引也需要占空间,如果有大量的索引,索引文件可能会比数据文件更快达到上限值
3、当对表中的数据进行增、删、改时,索引也需要动态的维护,降低了数据的维护速度
索引的分类 #
单列索引(普通索引、唯一索引、主键索引)、组合索引、全文索引、空间索引
创建索引 #
普通索引(b+树索引) #
alter table table_name add index index_name(column_name) using btree;
create unique index index_name on table_name(column_name);
组合索引 #
唯一索引 #
全文索引 #