MySQL профилирование запросов

Автор: | 09.07.2019

В MySQL начиная с версии 5.0.37 есть встроенный профайлер.

Включить его можно следующим образом:

  • set profiling = 1;
  • <ваши sql-запросы>;
  • show profiles;

Таким образом можно увидеть истинное время выполнения запросов, без учета времени затраченного на соединение с базой.

show profiles по умолчанию показывает профили для 15 запросов. Это количество можно увеличить с помощью параметра profiling_history_size, но не более чем до ста запросов:

  • set profiling = 1;
  • set profiling_history_size = 100;

Можно также подробно узнать на что тратилось время по каждому запросу:

  • show profile for query 1;