在数据库中改善性能最好的方式,就是通过数据库中合理地使用索引,换句话说,索引是提高 MySQL 数据库查询性能的主要手段,既然索引可以加快查询速度,那么是不是只要是查询语句需要,就建上索引?答案是否定的。因为索引虽然加快了查询速度,但索引也是有代价的:索引文件本身要消耗存储空间,同时索引会加重插入、删除和修改记录时的负担,另外,MySQL在运行时也要消耗资源维护索引,因此索引并不是越多越好。
下面是创建索引需要注意的地方以及优缺点
1、使用索引需要一定的代价
2、对于查询中很少涉及的列或者重复值比较多的列,不要简历索引
3、对于按范围查询的列 ,最好建立索引
4、若表中有主键或者外键,一定要为其建立索引
5、对于一些特殊的数据类型,不要建立索引
6 表记录比较少,例如一两千条甚至只有几百条记录的表,没必要建索引,让查询做全表扫描就好了。
索引的优缺点:
优点:1.加快访问速度2.加强行的唯一性
缺点:1.带索引的表在数据库中需要更多的存储空间
索引可以分为单列索引、复合索引、唯一索引、主键索引等
创建索引
唯一索引
create unique index 索引名称 on 表名称(列名称)
简单的索引
create index 索引名称 on 表名称(列名称)
对于多个索引,可以在把不同的列隔开