При работе с MySQL довольно полезно следить за нагрузкой, которая ложится на MySQL-сервер. В портах есть полезная утилита - mtop. Она в режиме реального времени отслеживает и показывает текущие запросы к безе данных, время их выполнения, статус MySQL-сервера в удобной форме.
Итак, выполним установку утилиты из системы портов:
# cd /usr/ports/databases/mtop && make install clean && rehash |
По завершению установки создадим MySQL-пользователя, которому дадим права на просмотр процессов MySQL:
mysql> grant process on *.* to 'mtop'@'localhost' identified by 'mtop_passwd_here'; Query OK, 0 rows affected (0.11 sec) |
На этом все "приготовления" можно считать законченными. Запустим mtop и посмотрим на результат. Параметри запуска следующие:
# mtop -dbu mtop -p mtop_passwd_here |
Если не указывать ключ -dbu, то mtop будет пытаться подключаться от имени пользователя mysqltop.
Теперь можно наблюдать за динамикой SQL-запросов. При этом быстрые запросы отображаются белым цветом и потом, по мере роста длительности выполнения цвет начинает меняться, если запрос выполняется более 10 секунд он окрашивается фиолетовым, более 20 секунд - желтым, более 40 секунд - красным. Это значения по умолчанию, но их можно переназначить.
Утилита очень хорошо визуально демонстрирует проблемные места в работе MySQL. Так же очень хорошо видны такие показатели как число процессов (threads) и сколько из них активны (running), сколько процессов закешированны(cached), сколько запросов поступило и сколько из них медленных(Queries/slow) и какова эффективность кеша запросов (Cache Hit).
Для того, чтобы узнать все возможности и ключи запуска утилиты - настоятельно рекомендую ознакомиться со страницей руководства.
А чтобы ознакомиться с доступными ключами во время работы утилиты, необходимо нажать "?". В результате получаем такую подсказку:
q - quit ? - help; show this text f - flush status F - fold/unfold column names in select statement display k - kill processes; send a kill to a list of ids s - change the number of seconds to delay between updates m - toggle manual refresh mode on/off d - filter display with regular expression (user/host/db/command/state/info) h - display process for only one host u - display process for only one user i - toggle all/non-Sleeping process display o - reverse the sort order e - explain a process; show query optimizer info t - show mysqld stats (show status/mysqladmin ext) T - show mysqld important stats v - show mysqld variables (show variables/mysqladmin vars) z - zoom in on a process, show sql statement detail r - show replication status for master/slaves |
Думаю, что переводить нету смысла, и так все понятно. Ну и напоследок - скриншоты вывода утилиты mtop:
Последние комментарии
21 неделя 6 дней назад
46 недель 20 часов назад
2 года 46 недель назад
3 года 16 недель назад
3 года 39 недель назад
4 года 2 недели назад
4 года 3 недели назад
4 года 6 недель назад
4 года 18 недель назад
4 года 22 недели назад