Перейти к содержимому
Перейти к основному содержимому

Проверка MySQL

Проверка MySQL (включая MariaDB и Percona) создаётся в дашборде, а выполняет её агент рядом с базой. Строка подключения живёт только локально в agent.yaml и на сервер Flaree не отправляется — в задании указывается лишь connectionRef.

Предварительные требования

  • Агент Flaree установлен и в статусе Online.

  • Тариф Pro: проверки баз данных недоступны на Starter.

  • Сетевая доступность от хоста агента до MySQL (по умолчанию TCP 3306).

  • Read-only пользователь с минимальными правами:

    CREATE USER 'flaree_ro'@'%' IDENTIFIED BY '<пароль>';
    GRANT USAGE ON *.* TO 'flaree_ro'@'%';

    Для liveness-проверки достаточно права подключиться и выполнить SELECT 1 — таблицы читать не нужно.

Минимальная конфигурация

Локально, в /etc/flaree-agent/agent.yaml:

connections:
mysql_main: "Server=10.0.0.6;Port=3306;User ID=flaree_ro;Password=<пароль>;Database=app"

В дашборде: Агенты → ваш агент → Назначенные проверки → Новая проверка, тип mysql, конфиг:

{ "connectionRef": "mysql_main" }

Полная конфигурация

Чекер MySQL выполняет единственную проверку — liveness (SELECT 1). Дополнительных полей конфига нет:

{ "connectionRef": "mysql_main" }
КлючТипПо умолчаниюОписание
connectionRefstringИмя строки подключения из connections: в agent.yaml. Обязателен.

Таймаут задания из формы дашборда применяется как CommandTimeout запроса. Интервал проверки тоже настраивается в форме, а не в JSON.

Проверка работы

  • Выполните пробный запрос с хоста агента теми же реквизитами, что в connections:.
  • Убедитесь, что счётчик проверок с type="mysql" растёт на локальных метриках агента.
  • В дашборде компонент должен перейти в Operational в течение одного-двух интервалов.
mysql -h 10.0.0.6 -u flaree_ro -p -e "SELECT 1"

curl -s http://127.0.0.1:9090/metrics | grep 'type="mysql"'
# flaree_agent_checks_total{type="mysql",ok="true"} 8

Troubleshooting

  • Проверка не выполняется или данных нет — чек-лист нет данных.
  • unknown_connection:<имя> — ключ в connections: не совпадает с connectionRef; после правки agent.yaml перезапустите агента.
  • Access denied в тексте ошибки — проверьте пользователя и host-маску ('flaree_ro'@'%' против 'flaree_ro'@'10.%').

Связанные страницы: PostgreSQL · MongoDB · концепция агента.