Какова единица времени в журнале медленных запросов MySQL?
Я просматриваю медленный журнал запросов из веб-приложения, основанного на drupal, и имеет строки, которые выглядят следующим образом:
# Query_time: 3257 Lock_time: 0 Rows_sent: 272 Rows_examined: 272
# Query_time: 1654 Lock_time: 0 Rows_sent: 222 Rows_examined: 222
# Query_time: 3292 Lock_time: 0 Rows_sent: 269 Rows_examined: 269
# Query_time: 1029 Lock_time: 0 Rows_sent: 172 Rows_examined: 172
# Query_time: 2126 Lock_time: 0 Rows_sent: 251 Rows_examined: 251
# Query_time: 1731 Lock_time: 0 Rows_sent: 229 Rows_examined: 229
Являются ли эти моменты указанием, что связанные запросы занимали от 1 до 3 + секунд (медленные, но не ужасные) для выполнения, или от 1000 до 3000 секунд (полностью неприемлемы)? Я понимаю, что параметр long_query_time
указан в секундах, но сообщения журнала следуют этому же соглашению или вместо них используются миллисекунды?
Изменить: это с MySQL версии 5.0.45.
Ответы
Ответ 1
В секундах. "Разрешение микросекунд" означает, что вы можете иметь до микросекундной точности после десятичной (хотя AFAIK ему нужен патч, чтобы на самом деле писать с такой точностью)
https://github.com/wvanbergen/request-log-analyzer/wiki/MySQL-slow-query-log
Ответ 2
Только с MySQL 5.1.21 вы можете указать десятичное значение и иметь разрешение микросекунды.
http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html