MySQL (remote monitoring)

Материал из Документация Ключ-АСТРОМ

Удаленно отслеживайте свои экземпляры MySQL, собирайте ключевые показатели эффективности и информацию о медленных запросах.

Обзор

Удаленно отслеживайте базы данных MySQL, в которых невозможно установить ЕдиныйАгент.

Начало работы

Активация расширения

  • Активируйте расширение в Hub, перейдя по адресу:
  • Расширения → MySQL → Добавить в среду
  • Добавьте новую конфигурацию мониторинга для каждого экземпляра MySQL, который вы хотите отслеживать.

Создание пользователя MySQL

Создайте пользователя, идентифицируемого собственным паролем, настройте имя пользователя и пароль по своему усмотрению.

CREATE USER 'astromkey'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

Предоставьте пользователю разрешения:

  • GRANT SELECT ON performance_schema.* TO 'astromkey'@'%';
    • Позволяет пользователю запрашивать схему Performance_schema.
  • GRANT PROCESS ON *.* TO 'astromkey'@'%';
    • Позволяет пользователю видеть показатели потоков и подключений других пользователей.
  • GRANT SHOW DATABASES ON *.* TO 'astromkey'@'%';
    • Позволяет пользователю видеть показатели базы данных для всех баз данных.
  • GRANT SELECT ON mysql.slow_log TO 'astromkey'@'%';
    • Позволяет пользователю запрашивать медленные запросы
  • GRANT SELECT ON sys.x$memory_global_by_current_bytes TO 'astromkey'@'%';
    • Разрешить пользователю запрашивать статистику памяти

Сбор показателей инфраструктуры

Чтобы включить сбор показателей ЦП, запустите этот запрос на экземпляре MySQL:

SET GLOBAL innodb_monitor_enable='cpu%';

Сбор самых медленных запросов

Включите запись медленных запросов в таблицу:

SET GLOBAL log_output = 'TABLE';
SET GLOBAL slow_query_log = 'ON';

Порог медленного запроса по умолчанию составляет 10 секунд. Вы можете выбрать порог «медленного запроса», выполнив:

SET GLOBAL long_query_time = 2;

Это установит порог медленных запросов равным 2 секундам.

Информация о совместимости

  • MySQL >= 5.7

Часто задаваемые вопросы

Почему я не вижу метрики Waits?

Чтобы собрать показатели ожидания, необходимо включить сбор данных для экземпляра MySQL. См. документацию: https://dev.mysql.com/doc/mysql-perfschema-excerpt/8.0/en/performance-schema-wait-tables.html

Могу ли я отслеживать MariaDB с помощью этого расширения?

Это расширение тестировалось только на экземплярах MySQL. MariaDB официально не поддерживается через это расширение.

Я получаю сообщение об ошибке «Открытый ключ RSA недоступен на стороне клиента»

Это означает, что имя пользователя не идентифицируется собственным паролем. См. раздел «Начало работы».

Я не вижу показателей процессора и памяти

Убедитесь, что для вашего экземпляра включен сбор данных.

Вы можете проверить возможность запроса данных, выполнив:

SELECT * FROM information_schema.INNODB_METRICS WHERE name IN ('cpu_utime_abs', 'cpu_stime_abs');

И:

SELECT SUBSTRING_INDEX(event_name,'/',2) AS code_area,
                SUM(current_alloc) AS current_alloc
          FROM sys.x$memory_global_by_current_bytes
          GROUP BY SUBSTRING_INDEX(event_name,'/',2)
          ORDER BY SUM(current_alloc) DESC;

Я не вижу медленных запросов

См. Сбор самых медленных запросов раздел «Начало работы».

Тип содержимого Количество включенных объектов
Screen Injections 1
Screen Logs Cards 2
Screen Properties 2
Screen Layout 2
Generic Relationship 2
Dashboards 1
Screen Chart Groups 6
Metric Metadata 34
List Screen Layout 1
Screen Entities Lists 2
Generic Type 2

Наборы функций

Ниже приведен полный список наборов функций, представленных в этой версии. Чтобы обеспечить соответствие вашим потребностям, отдельные метрики могут быть активированы и деактивированы вашим администратором во время настройки.