Мониторинг функционирования MySQL с помощью mytop

В данной статье рассмотрим установку и использование mytop, удобного инструмента для контроля запросов MySQLв реальном времени. Также рассмотрим различные операции, которые могут выполняться пользователем во время проверки запросов mytop.

 

Mytop

Mytop является инструментом командной строки, который схож с top command, но предназначен для контроля MySQL. Для работы требуется версия MySQL 3.22 или более поздняя, поддерживается также текущая версия MySQL 5.x. Mytop работоспособен на большинстве систем Linux. В данной статье будем использовать за основу Ubuntu. Для работы потребуются установленные Perl, DBI и Term::ReadKey. С помощью Term::ANSIColor можно получить на выходе любой цвет, который вам захочется. Версия 0.7 работает и на windows.

Установка

Перед установкой необходимо установить все программы, указанный в предыдущем пункте. Мytop устанавливается следующим образом:

Debian:
apt-get install mytop
Ubuntu:
sudo apt-get install mytop

Или можно загрузить tar ball и установить его:

tar -zxvf mytop-x.x.x.tar.gz (Номер вашей версии)
cd mytop-x.x.x. (Номер вашей версии)
perl Makefile.PL
make
make test
make install

Заполните команды сверху для извлечения данных и завершения установки. Для пользователей CentOS и RedHat потребуется загрузить репозиторий rpmforge для автоматической установки или же можно воспользоваться ручным методом установки.

Использование mytop

После установки перейдём к использованию mytop:

mytop --prompt (зададим пароль prompt, далее нажимаем enter для подтверждения пароля)

Это стандартный способ, также можно задать пароль следующим образом:

mytop -u root -p (здесь необходимо использовать пароль mysql, потому что задаётся пользователь "root")

Если возникает ошибка типа "root : NO PASS" или нечто подобное, введём следующее:

mytop -u root -p xxxx (вместо "xxxx" вводим наш пароль )

Перед использованием данных команд необходимо проверить, работает ли сервер MySQL.

После проверки просто нажимаем enter.

MySQL on localhost (5.0.8)                                    up 0+00:32:51 (11:20:10) 
Queries: 19.0 qps: 0 Slow: 0.0 Se/In/Up/De(%): 00/00/00/00
Qps now: 0 Slow ups: 0.0 Threads: 1 ( 1/ 0) 00/00/00/00
Key Efficiency: 100% Bps in/out: 7.3/907.3 Now in/out: 8.4/1.3k
Id User Host/IP DB Time Cmd Query or State
2 root localhost test 0 Query show full process

Первая строка отображает имя сервера (localhost) и версию MySQL, запущенную на нашей системе. Строка, выделенная ядерным голубым, обозначает время, в течение которого сервер MySQ функционирует в рабочем режиме, формат обозначения дни+часы:минуты:секунды, кроме того указано текущее время системы.

Вторая строка обозначает количество запросов, которые обработала система с момента начала работы.

Третья строка отображает количество потоков.

Вторая часть изображения показывает количество потоков, которые обрабатывает MySQL. Потоки отсортированы по времени ожидания they are sorted according to their idle time least idle first.

Некоторые параметры можно пропустить с помощью mytop:

-u or user username: Обычно используется для определения имени пользователя во время регистрации в mytop. По умолчанию установлен "root".

-p or pass or password password: Пароли, использующиеся для авторизации пользователя.. Пароль по умолчанию не установлен, поэтому поле с паролем можно не заполнять.

-h or host hostname[:port]: Для определения портов, если MySQL не использует стандартный порт. По умолчанию установлен 3306.

-s or -delay seconds: Определяет временной интервал для обновления. По умолчанию установлен 5.

Для просмотра других параметров mytop введём следующее:

man mytop

В man содержится достаточно информации о mytop.

Просмотрим файл конфигурации, созданный для получения доступа и контроля наших данных:

user=root    #Задаётся имя пользователя.
pass= #Задаётся пароль.
host=localhost #имя хоста.
db=test #имя баз данных.
delay=5 #временной интервал для обновления выходных данных контроля.
port=3306 #порт для использования в mytop.
socket= #если вы определили любой сокет, mytop будет игнорировать номер порта и имя хоста, эту строку можно удалить, если она вам не нужна.
batchmode=0 #предоставляет точное число запросов, обработанных в MySQL.
header=1 #Задаётся, если вы хотите отображать заголовок. Отображается клавишей h при работе mytop.
color=1 #Задаётся, если вы хотите использовать различные цвета (только если у вас поддерживаются цвета).
idle=1 #для отображения бездействующих процессов в списке процессов.

Файл конфигурации создаётся следующим образом:

mcedit ~/.mytop
файл будет создан в базовой папке, можно использовать любой редактор

Для просмотра других опций mytop напечатаем: ?, это отобразит весь список быстрых клавиш, которые используются в mytop.

Авторизуйтесь, чтобы получить возможность оставлять комментарии

Другие материалы в этой категории:

Go to top