MYSQL慢查询日志,监控有效率问题的SQL

2 篇文章 0 订阅

操作步骤
首先使用用户登录linux客户端,执行命令 mysql -u root -p, root是数据库用户名,系统会提示输入密码,输入密码回车,登录成功

输入命令

show variables like 'slow_query_log'

页面会显示是否开启了慢查询日志,slow_query_log =ON,代表已经开启

如果未开启,则需要执行该命令

set global slow_query_log=on;

通过设置log_queries_not_using_indexes开启为使用索引的监控
输入命令

show variables like 'log_queries_not_using_indexes';

log_queries_not_using_indexes=OFF,代表未开启,需要执行该命令

set global log_queries_not_using_indexes=on;

通过long_query_time设置监控阀值,也就是超过多少秒就记录,单位是秒,此处设置为0.1也就是100毫秒
输入命令

show variables like 'long_query_time';

系统设置的为1秒,如果需要修改为0.1秒,则需要执行如下命令

set global long_query_time=0.1;

通过以上设计,基本上可以开始优化工作了,set global 只是全局session生效,重启后失效,如果需要以上配置永久生效,需要在mysql.cnf中配置
[mysqld]
slow_query_log = 1
log_queries_not_using_indexes =1
long_query_time = 0.1
slow_query_log_file = /apps/logs/mysql/slow3306.log
如果是linux,就通过以下命令或service等其他方式重启
启动:/etc/init.d/mysqld(mysql) start
停止:/etc/init.d/mysqld(mysql) stop
重启:/etc/init.d/mysqld(mysql) restart
最后查看慢查询日志所在的位置,通过查看slow_query_log_file
执行命令

show variables like 'slow_query_log_file' \G	

显示的日志记录在/apps/logs/mysql/slow3306.log目录
测试
在这里插入图片描述
参考文章:https://www.cnblogs.com/Jmeter-Automation/p/12671772.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值