mysql查询慢场景_Mysql优化之慢查询优化

1、什么是慢查询?

慢查询顾名思义,就是查询慢的sql日志,是指Mysql记录所有执行时间超过long_query_time参数设定的时间阈值SQL语句的日志。该日志能为SQL语句的优化带来很好的帮助,能够帮助你更快速的定位执行慢的SQL语句。

默认情况下,慢查询是关闭的,要使用慢查询日志功能,首先要开启慢查询日志功能。

2、慢查询怎么启动?

找到my.ini(linux找到my.cnf)配置文件,增加慢查询配置

55ba6cd2edaa909167d119bb721a9d23.png

配置好上述内容,重启MySql加载配置。

通过下面语句查询是否配置生效:

show VARIABLES like '%slow_query_log%'

show VARIABLES like '%slow_query_log_file%'

show VARIABLES like '%long_query_time%'

show VARIABLES like '%log_queries_not_using_indexes%'

show VARIABLES like 'log_output'

3、慢查询场景解读

(1) 先设置SQL执行时间伐值为1s

set global long_query_time=1

bb5575e3c0f5e1f94c071cf716927444.png

(2) 随便查询一张表,查询时间大于1s即可

(3) 去查看配置好的日志输出路径就会发现

44fcc61da3166b7c7673ade8ce9cfeeb.png

(4) 文件内容解读

9b5a102c8ae0bb40e5966bb827dac7ae.png

第一行 Time:记录的是一个语句的执行时间

第二行 分别是用户名、用户的ip信息、线程id

第三行 Query_time:执行语句花费的时间, Lock_time:执行获得锁的时间,Rows_sent:获得的结果行数,Rows_examined:扫描的数据行数

第四行 SQL语句执行的具体时间

第五行 具体的SQL语句

PS:慢查询的日志记录非常多,要从里面找寻一条查询慢的日志并不是很容易的事情,需要一些工具辅助才能够快速定位需要优化的语句,可以使用Mysqldumpslow来分析

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值