sql语句的优化
首先我们得确定哪些 sql 语句需要优化,一般在一个系统中,查询语句最多,所以
我们主要是针对查询语句进行优化。主要采用两种方式来确定要优化的 sql 语句:
①使用慢查询日志,设置需要优化的 sql 语句的执行时间,记录下超过该设置时间
的语句,即为需要优化的语句。
②使用 profiling 机制,记录下每条 sql 语句的执行时间,找出执行较慢的语句,
即为需要优化的语句。
我们主要通过给表字段添加索引的方式进行优化,加上索引后,sql 语句的执行时间
显著提高了,但并不是加上索引了这条 sql 语句就会用到索引,所以首先看执行慢的语
句后面是否有加索引,我们可以使用 explain 或者 desc 加在要执行的 sql 语句前,查
看是否使用到索引。有几个地方需要注意的是:
①为了避免建议索引而造成索引文件过大,有时候我们会使用复合索引,这时候要遵
循最左原则。
②like 查询,前%不会用到索引
③如果条件中有 or,则要求 or 的索引字段都必须有索引,否则不能用到索引。
④如果列类型是字符串,一定要在条件中将数据使用引号引用起来,否则不使用索引。
⑤优化 group by 语句
⑥尽量避免模糊匹配,这样会导致全盘扫描