Как очистить профили запросов MySQL

после включения профилирования в MySQL

  SET profiling=1;

Я могу работать как запрос, как SELECT NOW(); и см. результаты профиля с его временем выполнения, используя:

  SHOW PROFILES;

однако я не могу понять, как очистить список профилей. Кто-нибудь знает заявление об удалении старых данных профиля? SET profiling=0; просто отключает запись новых данных и не удаляет старую статистику.

3 ответов


чтобы удалить предыдущий набор профилей запросов @@profiling_history_size=0. Следующий фрагмент очищает профили, устанавливает максимальный размер журнала и включает профилирование

SET @@profiling = 0;
SET @@profiling_history_size = 0;
SET @@profiling_history_size = 100; 
SET @@profiling = 1;

проверено на 5.6.17


информация о профилировании хранится в разделе information_schema.profiling временная таблица, как указано в http://dev.mysql.com/doc/refman/5.0/en/profiling-table.html

под пользователем базы данных, который имеет необходимый уровень доступа, вы можете усечь информацию, хранящуюся там, если это позволяет движок;

TRUNCATE TABLE information_schema.PROFILING;

Если нет, вы можете перезапустить сервер MySQL, как information_schema хранится исключительно в памяти, профайлинг информация не сохраняется после обслуживания перезапуск.


для полноты: закрытие текущего соединения с сервером и повторное подключение сбрасывает количество профилей.