生产问题定位-MySQL慢查询与索引优化

@auther 张念磊
@date 2021-10-01


今天闲来无事,写篇文章记录下本周遇到的一个生产问题。

一、现象

有一个服务每三十秒跑批一次来统计数据,按理说数据应该是每30秒刷新一次,但用户反馈数据10多分钟才能改变一次。

登录到生产的服务器,数据库服务单个线程的CPU占用率为 400%左右,这肯定是不健康的。
image-20211001150337772
且该线程为mysql,基本可以断定:出现了慢查询。

二、定位慢查询

找来我们的运维工程师,打开数据库的慢查询

打开数据库慢查询三步:

-- 0. 进入mysql 
mysql -uroot -pxxxx
-- 1. 将slow_query_log全局变量设为on
set global slow_query_log='ON';
-- 2. 设置慢查询日志存放的路径
set global slow_log_file='/usr/local/mysql/data/show.log';
-- 3. 查询超过n秒就记录
set global long_query_time=3;

设置的是3s,出来一堆慢查询,运维老师随便截了几个丢到群里。

image-20211001152341646

6301632569922_.pic_hd

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值