ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Mysql调优之慢sql抓取

2022-08-02 20:00:10  阅读:214  来源: 互联网

标签:slow 查看 sql 开启 调优之慢 Mysql query 日志


原文链接:https://blog.csdn.net/qq_36118769/article/details/85336834

在生产中,经常遇到某条sql执行速度慢而影响整个系统的运行,如何找到这条影响系统的sql是解决问题的前提。
mysql在出厂时许多默认功能并未开启,这样是为了保证mysql的运行性能,像上述问题一样,我们可以开启 sql慢查询日志,从而抓取拖慢系统的某条sql。

1、查看慢日志查询开启状态

执行 

show variables like '%slow_query_log%';

日志默认状态是关闭的, /var/lib/mysql/localhost-slow.log 是日志文件所在服务器的位置,日志的名字 以 主机-slow.log命名。

2、开启慢日志查询

set global slow_query_log =1;

现在可以查看为开启状态,但是这个状态只对本数据库本次有效,如重启便恢复关闭状态,若要长期开启,还需要修改配置文件。

3、查看慢sql阈值

执行 

show variables like '%long_query_time%';

默认设置 10秒为慢sql,在生产中一般sql超过2~3秒就已经很慢了(可以根据自己需求设置此值)

发现修改后,值还为10秒。原因是需要重新连接或者开启一个新的会话才能看到修改的值。

执行 

show global variables like '%long_query_time%';

可看到修改的值。

4、模拟查询慢sql

执行 

select sleep(4);

 

5、查看日志

 

查看日志 如下:

从而得出执行慢的sql,进行优化。

标签:slow,查看,sql,开启,调优之慢,Mysql,query,日志
来源: https://www.cnblogs.com/chang09/p/16544995.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有