I have the following MySQL configuration for logging the slow queries:
[mysqld]
### Logging options
general_log_file = /data/mysql-log/mysql_general.log
log-error = /data/mysql-log/mysql_error.log
slow_query_log_file = /data/mysql-log/mysql_slow.log
log-warnings = 1
log-queries-not-using-indexes = ON
log-slow-verbosity = full
long_query_time = 2
log-slow-admin-statements = 1
log-slow-slave-statements = 1
general-log = OFF
slow-query-log = ON
However, I see the following in my slow log file:
[
To my knowledge, the Query_time in the log file denotes the time query took to run, but it defers the log time mentioned in the config file.
Anyone here to help me explain as to why this is happening?
Best Answer
Maybe your mysqld got it's long_query_time value from another source. What happens if you run:
Note that I would consider setting the long_query_time to 0 to be good practice, particularly on Innodb databases. Consider the case where query A takes 1 second and runs a thousand times a day vs query B taking 20 seconds and run once a day; you'll get more benefit from tuning query A.