- 使用索引,建立索引要尽量使用频率高的
- 使用explain分析你SQL执行计划
- 查询SQL尽不要使用select *,而是具体字段
- 使用varchar代替char
- 查询尽量避免返回大量数据
- where限定查询的数据
- 避免在where子句中使用or来连接条件
- where后禁止对列进行函数转换和计算
- 优化like语句,尽量不用*like(前),用了前的就索引失效
- 尽量减少join连接多表
- 尽量使用数值替代字符串类型
- 索引不宜太多,-般5个以内
- 避免在索引列上使用内置函数
其中执行计划EXPLAIN:
通过慢查询定位一些查询比较慢的sq|语询, 在使用explain 具排查该sql语句索引是否有生效 ●EXPLAIN select * from mayikt_ user where id=1;
●EXPLAIN select * from mayikt_ user where user name='mayikt001';
●id:选择标识符
●select_ type:表示查询的类型。
●table:输出结果集的表
●partitions:匹配的分区
●type:表示表的连接类型
●possible_ keys:表示查询时, 可能使用的索引
●key:表示实际使用的索引
●key_ _len:索弓字段的长度
●ref:列与索弓|的比较
●rows:扫描出的行数(估算的行数)
●filtered:按表条件过滤的行百分比
●Extra:执行情况的描述和说明询,又是上述三种复杂查询中

1833

被折叠的 条评论
为什么被折叠?



