mysql>setglobal long_query_time=1;mysql>show global variables like'%long-query_time%'; 或修改 my.cnf 文件,[mysqld]下增加或修改参数long_query_time、slow_query_log和slow_query_log_file后,然后重启MySQL服务器。 代码语言:javascript 复制 [mysqld]slow_query_log=ON#开启慢查询日志的开关 slow_quer...
slow_query_log_file=/var/lib/mysql/my-slow.log #慢查询日志的目录和文件名信息 long_query_time=3 #设置慢查询的阈值为3秒,超出此设定值的SQL即被记录到慢查询日志 log_output=FILE # 一般有两种形式,一种是输出到文件FILE中,一种是写入数据表格table中,会保存到mysql库的slow_log表中 如果不指定存储路...
log-slow-queries :旧版(5.6以下版本)MySQL数据库慢查询日志存储路径。可以不设置该参数,系统则会默认给一个缺省的文件host_name-slow.log slow-query-log-file:新版(5.6及以上版本)MySQL数据库慢查询日志存储路径。可以不设置该参数,系统则会默认给一个缺省的文件host_name-slow.log long_query_time:慢查询阈值,...
mysql>showvariableslike'slow_query_log_file';+---+---+|Variable_name|Value|+---+---+|slow_query_log_file|/disk1/data/mysql001-slow.log|+---+---+1rowinset(0.00sec) 查看慢sql日志文件: [mysql@mysql001 log]$ tailf /disk1/data/mysql001-slow.log /usr/sbin/mysql...
查询mysql.slow_log,看下结果: 从上图可以看到,session2执行的for update操作的sql记录下来了,其中执行时间(query_time)是47s,在这47s里,锁定的时间(lock_time)是38s 结论: 当一个无自建主键的sql的执行时间(排除lock_time)大于long_query_time的时候,才会被记录到slow log中,并且query_time是累计了lock_time...
long_query_time = 1 #定义超过1秒的查询计数到变量Slow_queries。 log-slow-queries = /usr/local/mysql/data/slow.log #定义慢查询日志路径。 log-queries-not-using-indexes #未使用索引的查询也被记录到慢查询日志中(可选)。 mysql自带了一个查看慢日志的工具mysqldumpslow。
这次了解的是MySQL的慢查询日志,即Slow Query Log,参考社群的这篇文章《图文结合带你搞懂MySQL日志之Slow Query Log(慢查询日志)》,学习借鉴一下。 MySQL的慢查询日志,用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,...
#slow_query_log_file = /var/log/mysql/mysql-slow.log long_query_time =1 log_queries_not_using_indexes =0 解释如下: log_output=table:这个设置指示MySQL将慢查询日志记录到名为slow_query_log_table或mysql.slow_log的表中(您也可以在my.cnf或my.ini文件中使用slow_query_log_table参数来指定一个不...
# cat /data/mysql/mysql-slow.log # # select sleep(5); # Time: 2018-01-20T18:10:24.443517Z # User@Host: root[root] @ localhost [] Id: 3 # Query_time: 5.000564 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0 use test_db; SET timestamp=1524276624; select sleep(5); ...
exec_time为11216,但并未被记录到slow log中。 long_query_time 为一个MySQL选项参数。 这个参数不用说了,记录超过执行时间超过该值以上的SQL。 但这个坑在于:是按真正执行的时间(real time),不包括等待锁的时间。 举个简单的例子: 如果long_query_time设置为1秒 ...