Вот пример из журнала медленных запросов:
1 # Time: 030303 0:51:27
2 # User@Host: root[root] @ localhost []
3 # Query_time: 25 Lock_time: 0 Rows_sent: 3949 Rows_examined: 378036
4 SELECT ...
Строка 1 показывает, когда запрос был зарегистрирован, а строка 2 показывает, кто его выполнил.Строка 3 показывает, сколько секунд потребовалось для выполнения, сколько времени она ожидала блокировки таблицы на уровне сервера MySQL (не на уровне механизма хранения) , ...
Будьте осторожны, нечитать слишком много в медленном журнале запросов.Если вы видите один и тот же запрос в журнале много раз, есть большая вероятность, что он медленный и нуждается в оптимизации.Но то, что запрос появляется в журнале, не означает, что он плохой или даже обязательно медленный. Вы можете найти медленный запрос, запустить его самостоятельно и обнаружить, что он выполняется за доли секунды. Отображение в журнале просто означает, что запрос занял много времени;это не значит, что это займет много времени сейчас или в будущем.Существует много причин, по которым запрос может быть медленным иногда и быстрым в другое время:
• Возможно, таблица заблокирована, что привело к ожиданию запроса.Lock_time указывает, как долго запрос ожидал снятия блокировок.
• Возможно, данные или индексы еще не были кэшированы в памяти.Это часто встречается, когда MySQL запускается впервые или не был хорошо настроен.
• Возможно, выполнялся ночной процесс резервного копирования, что замедляло весь дисковый ввод / вывод.
• Возможно, сервер выполнял другие запросы нав то же время, замедляя этот запрос.
В результате вы должны рассматривать медленный журнал запросов как только частичную запись того, что произошло.Вы можете использовать его, чтобы сгенерировать список возможных подозреваемых, но вам необходимо изучить каждого из них более подробно.
Данные были процитированы из книги: «Высокопроизводительный MySQL: оптимизация, резервные копии,Репликация и многое другое, второе издание, Барон Шварц и соавт.Авторские права 2008 O'Reilly Media, Inc., 9780596101718. ”