The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Профилирование запросов в MySQL
Начиная с версии 5.0.37 в MySQL Community Server появился удобный инструмент
для профилирования запросов - директивы "SHOW PROFILES" и "SHOW PROFILE".

Директива "SHOW PROFILES" показывает список запросов, выполненных в рамках
текущей сессии и время выполнения каждого запроса. Число отображаемых запросов
определяется переменной сессии profiling_history_size, которая имеет значение
по умолчанию 15, максимальное 100. В список попадают все запросы кроме "SHOW
PROFILES" и "SHOW PROFILE", включая синтаксически неверные. Профилирование
действует в течении сессии. По завершении сессии информация профайлинга теряется.

Включаем профилирование:

   mysql> set profiling=1;
   Query OK, 0 rows affected (0.00 sec)

Через некоторое время смотрим результат:

   mysql> show profiles;
   | Query_ID | Duration   | Query
   | 2        | 0.00010300 | create table a1 (id int not null auto_increment)
   ...

Директива "SHOW PROFILE" показывает подробную информацию об этапах выполнения
отдельного запроса. По умолчанию, выводится информация о последнем запросе. Для
указания на конкретный запрос используется опция FOR QUERY n, где значение n
соответствует значению Query_ID из списка, формируемого директивой "SHOW PROFILES".

   mysql> show profile for QUERY 2;
   | Status               | Duration |
   | (initialization)     | 0.000039 |
   | checking permissions | 0.00004  |
   | creating table       | 0.004034 |
   | After create         | 0.000294 |
   | query end            | 0.000009 |
   | freeing items        | 0.000012 |
   | logging slow query   | 0.000004 |

где Status - состояние потока, а Duration - время выполнения в секундах.

Информацию, аналогичную результату работы "SHOW PROFILE", можно получить из
таблицы PROFILING базы INFORMATION_SCHEMA. Например, следующие команды являются эквивалентными:

   SHOW PROFILE FOR QUERY 2;

   SELECT STATE, FORMAT(DURATION, 6) AS DURATION FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID = 2;


Ссылки

Подробное описание синтаксиса с указанием всех возможных опций:
  http://dev.mysql.com/doc/refman/5.0/en/show-profiles.html
Пример использования профайлинга для оптимизации сложных запросов: 
  http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html
 
Раздел:    Корень / Программисту и web-разработчику / SQL и базы данных / MySQL специфика / Оптимизация и администрирование MySQL

Обсуждение [ RSS ]
 
  • 1, mihasik, 22:56, 02/03/2010 [ответить] [смотреть все]
  • +/
    столкнулся с необходимостью оптимизировать работу приложения с MySQL базой
    для Postgres'a есть замечательный pgFouine
    есть нечто подобное для MySQL?
     
     
  • 3, jetstalker, 19:26, 07/03/2010 [^] [ответить] [смотреть все]
  • +/
    maatkit
     
  • 2, Денис Юсупов, 14:41, 03/03/2010 [ответить] [смотреть все]
  • +/
    Не знаю, но может, гугл всё же поможет?
    http://www.google.com/search?hl=en&q=mysql+log+analyzer&aq=f&aqi=&aql=&oq=
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:

     Добавить заметку
     Версия для печати
     
     Поиск заметки:
     

    Последние заметки
    - 05.02 Проброс 802.1q/access порта в Linux через IP-сеть
    - 25.01 Использование systemtap для устранения уязвимости в реализации /proc/pid/mem
    - 24.01 Мониторинг загрузки многоядерного сервера по каждому ядру в отдельности в Linux
    - 23.01 Осуществление ОGSM/SMS/USSD вызовов с использованием утилиты mdbus
    - 13.01 Интерактивный firewall в Linux
    - 08.01 Советы по увеличению автономной работы ноутбука с Debian/Ubuntu
    - 31.12 Бэкап и восстановление данных из БД memcachedb и других хранилищ на базе BerkeleyDB
    - 28.12 Получение инкрементальных diff-файлов для subversion
    - 27.12 Решение проблемы поддержки php-zip-extension в Fedora-16
    - 25.12 Настройка сетевого доступа в окружениях QEMU
    RSS | Следующие 15 записей >>


    АКЦИЯ! ПОДПИШИСЬ на журнал Linux Format до 31 января 2012 года и выиграй СУПЕРПРИЗ!

    Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

    Каждый, кто оформит подписку, получает бонус- объёмные наклейки на системный блок и подарки: с одним из первых выпусков журнала в 2012 году- диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

    Подробнее о проведении акции вы можете прочитать на странице сайта.


      Закладки на сайте
      Проследить за страницей
    Created 1996-2012 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    RUNNet TopList