MySql使用优化——不同种类的索引在不同场景中的应用(附实战分析源码)。
背景: 项目开发中遇到了千万级的数据查询,对接口请求加了监控,要求接口响应时间要求1秒内,最长不能超过2秒。当用户量起来之后,都会面临到一个问题,数据查询优化。不得不说在不同的场景中正确的使用索引查询效率可以达到不同的量级。通过吸收前人的经验,对mysql中索引对使用进行了分析,总共三四千多字,部分引用网上资源,在后面注释有参考文章链接。
MySQL目前主要使用的索引类型为:普通索引、唯一索引、主键索引、组合索引、全文索引。通过给字段添加索引可以提高数据的读取速度,提高项目的并发能力和抗压能力。索引优化时mysql中的一种优化方式。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。
MySQL目前主要使用的索引类型:
1、普通索引
普通索引是最基本的索引,它没有任何限制,值可以为空;仅加速查询。可以通过以下几种方式来创建或删除:
1)、直接创建索引
CREATE INDEX index_name ON table(column(length))
2)、修改表结构的方式添加索引
ALTER TABLE table_name ADD INDEX index_name ON (column(length))
3)、删除索引
DROP INDEX index_name ON table
2、唯一索引
唯一索引与普通索引类似,不同的就是:索引列的值必须唯一&