MySQL Query logging

From Notes_Wiki
Revision as of 04:09, 7 November 2012 by Saurabh (talk | contribs) (Created page with "=Query logging= ==Logging all queries== We can log all queries that are received by server (even that have incorrect syntax) using '<tt>log</tt>' option in '<tt>[mysqld]</tt...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Query logging

Logging all queries

We can log all queries that are received by server (even that have incorrect syntax) using 'log' option in '[mysqld]' section

[mysqld]
log

This can be very helpful on development machines for debugging.


Logging slow queries

Logging all queries can be problematic on production servers. Hence on production servers we can use:

long_query_time = 5
log_slow_queries
log_long_format

Here:

  • 'log_slow_queries' is used to log all queries which take more than 'long_query_time' seconds to execute. The minimum value of this parameter is 2, as mysql measures time with second accuracy.
  • 'log_long_format' will log additional information like which queries are not using indexes at all or not using indexes properly, etc.


More information about configurable parameters of mysql can be found in '/usr/share/doc/mysql-server-<version>'.