重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在剖析服务器性能的过程中,慢查询是一个很好的工具。
10年积累的成都网站设计、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有双塔免费网站建设让你可以放心的选择与我们合作。
我们可以通过设置slow_query_log来开启慢查询日志,long_query_time属性来设置慢查询定义阈值,设置slow_query_log_file来定义慢查询日志的存储文件。
当前环境是windows10,Mysql8.0.15版本。
show global variables like 'slow_query%'
show global variables like 'long_query%'
set global slow_query_log_file='F:ATempslowly.log'
set global long_query_time=2,单位为秒,可以通过设置long_query_time为0 来捕获所有的查询。
select sleep(3);
生成的日志:
C:Program FilesMySQLMySQL Server 8.0binmysqld.exe, Version: 8.0.15 (MySQL Community Server - GPL). started with:
TCP Port: 3306, Named Pipe: MySQL
Time Id Command Argument
# Time: 2021-05-19T14:38:24.960151Z
# User@Host: root[root] @ localhost [::1] Id: 14
# Query_time: 3.000456 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
use env;
SET timestamp=1621435101;
select sleep(3)
LIMIT 0, 1000;
包含的信息包括执行查询的用户,查询的语句以及发起时间等。
正在学习,如果有误或不足,请指出交流。
默认是关闭状态:mysql show variables like "%slow%";
开启方法:mysql set global slow_query_log='ON';
另外 可以根据自己的需要设置慢查询的时间,默认是10秒:
设置方法:mysql set long_query_time=5;
long_query_time 参数的查看
默认是10秒,10秒以上的sql会记录。可进行值的修改,
long_query_time 默认不开启 ,如果不是需要进行开始调优,一般不建议开启此参数。
永久开启:
在my.cnf中的
1.查看慢查询的时长
看此图默认10秒,是大于10秒,不等于10秒。
2.修改此时长
临时修改,重启mysql后失效,修改后需要新开连接才能查询到
永久在配制文件中修改
查看慢sql个数
将所有没有使用带索引的查询语句全部写到慢查询日志中
设置没带索引的慢sql进行记录
最后汇总my.cnf配制