Утилита анализа нагрузки MySQL – mtop

Оригинал тут: http://www.hilik.org.ua/mtop/
Есть в портах утилита визуального контроля нагрузки на MySQL mtop. Она в реальном времени отслеживает и показывает текущие запросы, время их выполнения, статус самого MySQL в удобной форме.
Установка и настройка простые. Ставим из портов:
cd /usr/ports/databases/mtop/
make install clean

Теперь можно запустить mtop и посмотреть что получим:
mtop -dbu login -p password

И теперь можем наблюдать динамику процессов в MySQL.
При этом быстрые запросы подсвечены серым цветом и потом по мере роста длительности выполнения цвет начинает меняться, если запрос выполняется более 10 секунд он окрашивается фиолетовым, более 20 секунд – желтым, более 40 секунд – красным, могу точно сказать что красным окрашены запросы длительностью до 90 секунд, более длительных запросов в mtop я не наблюдал. Утилита очень хорошо визуально демонстрирует проблемные места в работе MySQL.
Так же очень хорошо видны такие показатели как число процессов (threads) и сколько из них активны (running), сколько процессов закешированны(cached), сколько запросов поступило и сколько из них медленных(Queries/slow:) и какова эффективность кеша запросов(Cache Hit:)
И из этих показателей уже можно сформировать вывод об эффективности работы MySQL и что в ней еще можно подкрутить или отправиться к програмистам для оптимизации запросов.

Кнопки в интерфейсе:
s – частота обновления процессов. В секунду.

mysql5 и кодировка

Способы задания кодировок

1) Для всего сервера при компиляции, определив параметры --with-charset и --with-collation:

./configure --with-charset=cp1251 --with-collation=cp1251_general_ci

2) Для всего сервера при запуске mysqld, определив параметры --character-set-server и --collation-server:

mysqld --character-set-server=cp1251 --collation-server=cp1251_bin

Continue reading