mytop — это утилита, предназначенная для того, чтобы следить за уровнем загруженности сервера MySQL. Она требует версию MySQL не ниже, чем 3.22, прекрасно работает с большинством Linux систем. Утилита подключается к MySQL серверу и периодически выполняет запросы SHOW PROCESSLIST и SHOW STATUS, а затем суммирует полученную информацию и выдает в удобной для человека форме. С использованием mytop, поддержка сайта, использующего MySQL, если вы занимаетесь этим самостоятельно, заметно упрощается.
Программа написана на Perl с целью мониторинга баз данных для MySQL. Чтобы подключиться к MySQL нужно после установки ввести mysql -u root -p
, создать конфигурационный файл (пример ниже) в вашем пользовательском каталоге и внести конфигурацию подключения. Надо дать пользователю права на подключение к базам: mysql> grant all on *.* to 'mytop'@'localhost' identified by 'password'
.
Пример конфигурационного файла ${HOME}/.mytop:
user=mytop
pass=password
delay=1
Экран при работе c mytop разбит на две половины. В первой части мы видим четыре верхние строки, содержащие информацию о вашем MySQL сервере:
- Имя сервера (хоста), версия сервера, время р
аботы. - Общее количество запросов, которые были обработаны за все время
- Информация об активных и кэшированных процессах.
- Сведения об эффективности буфера ключей, о том, как часто MySQL находит в буфере ключи без помощи жесткого диска, среднее число данных, полученных и отправленных сервером, выраженное в байтах.
Во второй части экрана утилита показывает все активные потоки, имя пользователя, текущий запрос, состояние. Чтобы запустить mytop в пакетном режиме нужно указать ключ -b
без аргументов. Пакетный режим позволяет выполнять процесс без возможности прерывания его другим процессом, в отличие от интерактивного, который реагирует немедленно на любое действие пользователя.
Настроить mytop можно, прибегнув к трем различным способам: запустить с передачей аргументов из командной строки, создать конфигурационный файл в каталоге пользователя или отредактировать perl-код утилиты.