共计 1452 个字符,预计需要花费 4 分钟才能阅读完成。
本篇内容主要讲解“mysql 的慢查询日志记录哪些内容”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“mysql 的慢查询日志记录哪些内容”吧!
在 mysql 中,慢查询日志记录的是响应时间超过阈值的语句;响应时间阈值就是运行时间超过“long_query_time”的值,该值的默认值为 10,也即慢查询日志记录运行超过十秒以上的 SQL 语句。慢查询日志可将日志记录写入日志文件和数据库表。
本教程操作环境:windows10 系统、mysql8.0.22 版本、Dell G3 电脑。
mysql 的慢查询日志记录什么
MySQL 的慢查询,全名是慢查询日志,是 MySQL 提供的一种日志记录,用来记录在 MySQL 中响应时间超过阀值的语句。
具体环境中,运行时间超过 long_query_time 值的 SQL 语句,则会被记录到慢查询日志中。
long_query_time 的默认值为 10,意思是记录运行 10 秒以上的语句。
默认情况下,MySQL 数据库并不启动慢查询日志,需要手动来设置这个参数。
当然,如果不是调优需要的话,一般不建议启动该参数,因为开启慢查询日志会或多或少带来一定的性能影响。
慢查询日志支持将日志记录写入日志文件和数据库表。
参数说明
slow_query_log:是否开启慢查询日志,1 表示开启,0 表示关闭。
log-slow-queries:旧版(5.6 以下版本)MySQL 数据库慢查询日志存储路径。可以不设置该参数,系统则会默认给一个缺省的文件 host_name-slow.log
slow-query-log-file:新版(5.6 及以上版本)MySQL 数据库慢查询日志存储路径。可以不设置该参数,系统则会默认给一个缺省的文件 host_name-slow.log
long_query_time:慢查询阈值,当查询时间多于设定的阈值时,记录日志。
log_queries_not_using_indexes:未使用索引的查询也被记录到慢查询日志中(可选项)。
log_output:日志存储方式。log_output= FILE 表示将日志存入文件,默认值是 FILE。log_output= TABLE 表示将日志存入数据库。
扩展知识:
1、查看慢日志功能的状态,慢日志功能默认是关闭的 show variables like %slow_query_log%
OFF 表示慢日志功能处于关闭状态,慢日志记录存储在 DESKTOP-2331B4V-slow.log 文件中,DESKTOP 为本人的计算机名。
2、开启慢日志功能 set global slow_query_log=1;
然后再查询慢日志状态
状态为 ON,表示慢日志功能已开启。
3、查看默认的 long_query_time 时间
long_query_time 为 10 秒,表示 SQ 语句超过 10 秒的才会被记录到慢日志中。
4、设置 long_query_time 时长,默认的 10 秒太长 set global long_query_time=3;
重新打开一个会话,如果是 window 系统的话,再重新打卡一个 cmd 就可以 (注意如果还是在设置 long_query_time 的会话中查询 long_query_time 时长的话,还是默认的 10 秒,所以要重启一个会话),再次查询 long_query_time 时长
到此,相信大家对“mysql 的慢查询日志记录哪些内容”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!