Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for MySQL®
  • Начало работы
    • Все инструкции
      • Просмотр логов кластера
      • Диагностика производительности
      • Мониторинг состояния кластера и хостов
      • Подключение из DataLens
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы

В этой статье:

  • Активировать сбор статистики
  • Получить статистику по сессиям
  • Получить статистику по запросам
  1. Пошаговые инструкции
  2. Логи и мониторинг
  3. Диагностика производительности

Диагностика производительности в Managed Service for MySQL®

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 21 апреля 2025 г.
  • Активировать сбор статистики
  • Получить статистику по сессиям
  • Получить статистику по запросам

В Managed Service for MySQL® встроен инструмент для сбора статистики по сессиям и запросам. Эти метрики могут быть полезны при анализе производительности и оптимизации настроек кластера.

Активировать сбор статистикиАктивировать сбор статистики

Консоль управления
CLI
Terraform
REST API
gRPC API

При создании кластера или изменении его настроек:

  1. Включите опцию Сбор статистики (по умолчанию отключена).
  2. Настройте Интервал сбора сессий и Интервал сбора запросов. Диапазон значений — от 1 до 86400 секунд.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы включить и настроить сбор статистики, передайте параметр --performance-diagnostics в команде изменения кластера:

yc managed-mysql cluster update <имя_или_идентификатор_кластера> \
   ...
   --performance-diagnostics enabled=true,`
                            `sessions-sampling-interval=<интервал_сбора_сессий>,`
                            `statements-sampling-interval=<интервал_сбора_запросов> \
    ...

Допустимые значения параметров sessions-sampling-interval и statements-sampling-interval — от 1 до 86400 секунд.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Чтобы включить и настроить сбор статистики, добавьте блок performance_diagnostics в конфигурацию кластера:

    resource "yandex_mdb_mysql_cluster" "<название_кластера>" {
      ...
      performance_diagnostics {
        enabled = true
        sessions_sampling_interval = <интервал_сбора_сессий>
        statements_sampling_interval = <интервал_сбора_запросов>
      }
      ...
    }
    

    Допустимые значения параметров sessions_sampling_interval и statements_sampling_interval — от 1 до 86400 секунд.

  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL®:

  • создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
  • изменение кластера, в том числе обновление версии MySQL®, — 60 минут;
  • удаление кластера — 15 минут.

Операции, длящиеся дольше указанного времени, прерываются.

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_mysql_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Чтобы включить сбор статистики при создании кластера:

    1. Воспользуйтесь методом Cluster.create и добавьте параметр configSpec.performanceDiagnostics в команду cURL по созданию кластера:

      curl \
          --request POST \
          --header "Authorization: Bearer $IAM_TOKEN" \
          --header "Content-Type: application/json" \
          --url 'https://mdb.api.cloud.yandex.net/managed-mysql/v1/clusters' \
          --data '{
                    "configSpec": {
                      "performanceDiagnostics": {
                        "enabled": <активация_сбора_статистики:_true_или_false>,
                        "sessionsSamplingInterval": "<интервал_сбора_сессий>",
                        "statementsSamplingInterval": "<интервала_сбора_запросов>"
                      },
                      ...
                    },
                    ...
                  }'
      

      Где configSpec.performanceDiagnostics — настройки сбора статистики:

      • enabled — активация сбора статистики;
      • sessionsSamplingInterval — интервал сбора сессий: от 1 до 86400 секунд;
      • statementsSamplingInterval — интервал сбора запросов: от 60 до 86400 секунд.
    2. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  3. Чтобы включить сбор статистики при изменении существующего кластера:

    1. Воспользуйтесь методом Cluster.update и выполните запрос, например, с помощью cURL:

      Важно

      Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask (одной строкой через запятую).

      curl \
          --request PATCH \
          --header "Authorization: Bearer $IAM_TOKEN" \
          --header "Content-Type: application/json" \
          --url 'https://mdb.api.cloud.yandex.net/managed-mysql/v1/clusters/<идентификатор_кластера>' \
          --data '{
                    "updateMask": "configSpec.performanceDiagnostics",
                    "configSpec": {
                      "performanceDiagnostics": {
                        "enabled": <активация_сбора_статистики:_true_или_false>,
                        "sessionsSamplingInterval": "<интервал_сбора_сессий>",
                        "statementsSamplingInterval": "<интервала_сбора_запросов>"
                      }
                    }
                  }'
      

      Где configSpec.performanceDiagnostics — настройки сбора статистики:

      • enabled — активация сбора статистики;
      • sessionsSamplingInterval — интервал сбора сессий: от 1 до 86400 секунд;
      • statementsSamplingInterval — интервал сбора запросов: от 60 до 86400 секунд.
    2. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Чтобы включить сбор статистики при создании кластера:

    1. Воспользуйтесь методом ClusterService/Create и добавьте параметр config_spec.performance_diagnostics в команду gRPCurl по созданию кластера:

      grpcurl \
          -format json \
          -import-path ~/cloudapi/ \
          -import-path ~/cloudapi/third_party/googleapis/ \
          -proto ~/cloudapi/yandex/cloud/mdb/mysql/v1/cluster_service.proto \
          -rpc-header "Authorization: Bearer $IAM_TOKEN" \
          -d '{
                "config_spec": {
                  "performance_diagnostics": {
                    "enabled": <активация_сбора_статистики:_true_или_false>,
                    "sessions_sampling_interval": "<интервал_сбора_сессий>",
                    "statements_sampling_interval": "<интервала_сбора_запросов>"
                  },
                  ...
                },
                ...
              }' \
          mdb.api.cloud.yandex.net:443 \
          yandex.cloud.mdb.mysql.v1.ClusterService.Create
      

      Где config_spec.performance_diagnostics — настройки сбора статистики:

      • enabled — активация сбора статистики;
      • sessions_sampling_interval — интервал сбора сессий: от 1 до 86400 секунд;
      • statements_sampling_interval — интервал сбора запросов: от 60 до 86400 секунд.
    2. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  4. Чтобы включить сбор статистики при изменении существующего кластера:

    1. Воспользуйтесь вызовом ClusterService/Update и выполните запрос, например, с помощью gRPCurl:

      Важно

      Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask (в виде массива строк paths[]).

      Формат перечисления настроек
      "update_mask": {
          "paths": [
              "<настройка_1>",
              "<настройка_2>",
              ...
              "<настройка_N>"
          ]
      }
      
      grpcurl \
          -format json \
          -import-path ~/cloudapi/ \
          -import-path ~/cloudapi/third_party/googleapis/ \
          -proto ~/cloudapi/yandex/cloud/mdb/mysql/v1/cluster_service.proto \
          -rpc-header "Authorization: Bearer $IAM_TOKEN" \
          -d '{
                "cluster_id": "<идентификатор_кластера>",
                "update_mask": {
                  "paths": [
                    "config_spec.performance_diagnostics"
                  ]
                },
                "config_spec": {
                  "performance_diagnostics": {
                    "enabled": <активация_сбора_статистики:_true_или_false>,
                    "sessions_sampling_interval": "<интервал_сбора_сессий>",
                    "statements_sampling_interval": "<интервала_сбора_запросов>"
                  }
                }
              }' \
          mdb.api.cloud.yandex.net:443 \
          yandex.cloud.mdb.mysql.v1.ClusterService.Update
      

      Где config_spec.performance_diagnostics — настройки сбора статистики:

      • enabled — активация сбора статистики;
      • sessions_sampling_interval — интервал сбора сессий: от 1 до 86400 секунд;
      • statements_sampling_interval — интервал сбора запросов: от 60 до 86400 секунд.
    2. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Получить статистику по сессиямПолучить статистику по сессиям

  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for MySQL.

  2. Нажмите на имя нужного кластера и выберите вкладку Диагностика производительности → Сессии.

    Для просмотра статистики по сессиям или истории запросов в рамках сессии выберите соответствующую вкладку.

    Статистика
    История

    Для просмотра статистики по сессиям:

    1. Задайте интересующий временной интервал.
    2. (Опционально) Настройте фильтры.
    3. Выберите нужный срез данных.

    Чтобы показать или скрыть отдельные категории, нажмите на имя категории в легенде графика.

    Для просмотра истории запросов в рамках сессии:

    1. Задайте интересующий временной интервал.
    2. (Опционально) Настройте фильтры.

Получить статистику по запросамПолучить статистику по запросам

  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for MySQL.

  2. Нажмите на имя нужного кластера и выберите вкладку Диагностика производительности → Запросы.

    Для просмотра статистики по запросам или сравнения их статистических данных на двух временных интервалах выберите соответствующую вкладку.

    Интервал
    2 интервала

    Для просмотра статистики запросов:

    1. Выберите интересующий временной интервал.
    2. (Опционально) Настройте фильтры.

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

    1. В поле Интервал 1 выберите временной интервал, статистика за который будет основой для расчетов.
    2. В поле Интервал 2 выберите временной интервал, статистика за который будет сравниваться со статистикой первого интервала.
    3. (Опционально) Настройте фильтры.

    Например, пусть в первом интервале было выполнено 10 запросов SELECT * FROM cities, а во втором — 20. Тогда при сравнении статистических данных разница по метрике количество запросов (столбец Calls в таблице) будет равняться +100%.

Подробнее про отображаемые сведения см. в документации MySQL®.

Была ли статья полезна?

Предыдущая
Просмотр логов кластера
Следующая
Мониторинг состояния кластера и хостов
Проект Яндекса
© 2025 ООО «Яндекс.Облако»