如何进行 MySQL慢查询 操作

慢查询日志会把查询耗时超过规定时间的SQL语句记录下来,利用慢查询日志,定位分析性能的瓶颈。

slow_query_log 可以设置慢查询日志的开闭状态

long_query_time 可以规定查询超时的时间,单位是秒

# 查看慢查询相关配置
SHOW VARIABLES like 'slow_query%';

# 配置
slow_query_log = ON
long_query_time = 1


set global slow_query_log =[on/off]
# 最好能与 data分开 
set global slow_query_log_file = /aaa/aaa.log
set global long_query_time = xx.xxx 秒
# 记录未使用索引的SQL
set global long_queries_not_using_indexes = [on|off] 

工具

mysqldumpslow [OPTS....] [LOGS...]

mysqldumpslow -s r -t 10 slow-mysql.log

-s 排序 (c总次数,t总时间,l锁的世界,r总行数,at,al,ar) a`x`是平均 例at= 总时间/总次数

-t top 指定取前几条
pt-query-digest [OPTIONS] [FILES] [DSN]

pt-query-digest --explain h=127.0.0.1,u=root,p=password slow-mysql.sql > slow.rep
--explain 带有解释
> 输出到指定文件

实时监控

select id,`user`,`host` ,`DB`,`command`,time,state,info
->FROM information_schema.PROCESSLIST
-> WHERE TIME >=10;

本文地址:https://blog.csdn.net/cocoa_geforce/article/details/110677264

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐