如何进行慢sql优化

进行SQL优化的第一步,是先查找哪些查询sql执行效率低。

慢sql日志功能:
    -在mysql会有一个日志文件用于记录执行时间超过指定时间的sql,这个日志文件就叫做慢sql日志。
   - 该功能在mysql中默认不开启,若想使用该功能,需要开启

操作慢sql日志的sql:

1. 查看慢sql日志是否打开:show variables like 'slow_query_log';
2. 开启慢sql日志功能:set global slow_query_log=1
	执行时间超过10s时,默认视为慢sql,会将该sql记录到日志文件中。
3. 查询慢sql日志设置的时间:show global variables like 'long_query_time'
4. 如果需要,可以修改设置时间(阈值时间): set global long_query_time=2
5. 查看日志文件: show variables  like 'slow_query_log_file'

注意点:对慢sql日志功能设置完成,需要重启数据库服务器,才能生效
慢sql日志文件在数据库安装路径中的data目录下(前提:打开慢sql日志功能)

确定慢sql是哪些后,如何对sql进行优化

1. 看慢sql是否使用了*,若是,则改为具体的字段
2. 看慢sql是否使用了嵌套查询,此时是否可以将嵌套查询转换为联查,若可以,则使用联查,因为联查的效率高于嵌套的.
3. 检查查询条件部分的字段是否需要使用索引,若需要,确定查询条件字段是否使用了索引,若没有,则添加索引
4. 检查查询条件部分的字段是否添加了索引,若添加了索引,检查此时对字段进行条件查询的操作是否导致索引失效

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值