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

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

  • Настройка соединения
  • Синтаксис запросов
  • Ограничения
  • Пушдаун фильтров
  • Поддерживаемые типы данных
  1. Источники и приемники данных
  2. Работа с базами данных Managed Service for MySQL®

Работа с базами данных Managed Service for MySQL®

Статья создана
Yandex Cloud
Обновлена 6 марта 2025 г.
  • Настройка соединения
  • Синтаксис запросов
  • Ограничения
  • Пушдаун фильтров
  • Поддерживаемые типы данных

В этом разделе описана основная информация про работу с Managed Service for MySQL®.

Для работы с базой данных Managed Service for MySQL® необходимо выполнить следующие шаги:

  1. Создать соединение, содержащее реквизиты для подключения к базе данных.
  2. Выполнить запрос к базе данных.

Пример запроса, выполняющего чтение данных из Managed Service for MySQL®:

SELECT * FROM mysql_mdb_connection.my_table

Где:

  • mysql_mdb_connection — название созданного соединения с базой данных.
  • my_table — имя таблицы в базе данных.

Настройка соединенияНастройка соединения

Чтобы создать соединение с Managed Service for MySQL®:

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

  2. В списке сервисов выберите Yandex Query.

  3. На панели слева перейдите на вкладку Соединения.

  4. Нажмите кнопку Создать.

  5. Укажите параметры соединения:

    1. В блоке Общие параметры:

      • Имя — название соединения с Managed Service for MySQL®.
      • Тип — Managed Service for MySQL.
    2. В блоке Параметры типа соединения:

      • Кластер — выберите существующий кластер Managed Service for MySQL® или создайте новый.

      • Сервисный аккаунт — выберите существующий сервисный аккаунт Managed Service for MySQL® или создайте новый с ролью managed-mysql.viewer, от имени которого будет выполняться подключение к кластерам Managed Service for MySQL®.

        Чтобы использовать сервисный аккаунт, пользователю нужна роль iam.serviceAccounts.user.

      • База данных — выберите базу данных, которая будет использоваться при работе с кластером MySQL®.

      • Логин — имя пользователя, которое будет использоваться для подключения к базам данных MySQL®.

      • Пароль — пароль пользователя, который будет использоваться для подключения к базам данных MySQL®.

  6. Нажмите кнопку Создать.

Сервисный аккаунт необходим для обнаружения точек подключения к кластерам Managed Service for MySQL® внутри Yandex Cloud, для работы с данными логин и пароль пользователя задаются отдельно.

Важно

Необходимо предварительно разрешить сетевой доступ от Yandex Query до кластеров Managed Service for MySQL®. Для этого в настройках базы данных, к которой осуществляется подключение, включите опцию Доступ из Yandex Query.

Синтаксис запросовСинтаксис запросов

Для работы с MySQL® используется следующая форма SQL-запроса:

SELECT * FROM <соединение>.<имя_таблицы>

Где:

  • <соединение> — название созданного соединения с базой данных.
  • <имя_таблицы> — имя таблицы в базе данных.

ОграниченияОграничения

При работе с кластерами MySQL® существует ряд ограничений:

  • Внешние источники доступны только для чтения данных через запросы SELECT. Запросы, модифицирующие таблицы во внешних источниках, сервисом Yandex Query в настоящее время не поддерживаются.

  • В YQ используется система типов Yandex Managed Service for YDB. Однако диапазоны допустимых значений для типов, использующихся в YDB при работе с датой и временем (Date, Datetime, Timestamp), зачастую оказываются недостаточно широкими для того, чтобы вместить значения соответствующих типов MySQL® (date, datetime, timestamp). В связи с этим значения даты и времени, прочитанные из MySQL®, возвращаются YQ как обычные строки (тип Optional<Utf8>) в формате ISO-8601.

Пушдаун фильтровПушдаун фильтров

Yandex Query умеет передавать обработку частей запросов в систему-источник данных. Это означает, что фильтрующие выражения передаются сквозь Yandex Query непосредственно в базу данных для обработки, обычно это условия запросов, указанных в WHERE. Такой способ обработки называется пушдаун фильтров.

Пушдаун фильтров возможен при использовании:

Описание Пример
Фильтров вида IS NULL/IS NOT NULL WHERE column1 IS NULL или WHERE column1 IS NOT NULL
Логических условий OR, NOT, AND. WHERE column IS NULL OR column2 is NOT NULL.
Условий сравнения =, <>, <, <=, >, >= c другими колонками или константами. WHERE column3 > column4 OR column5 <= 10.

Поддерживаемые типы данных для пушдауна фильтров:

Тип данных Yandex Query
Bool
Int8
Uint8
Int16
Uint16
Int32
Uint32
Int64
Uint64
Float
Double

Поддерживаемые типы данныхПоддерживаемые типы данных

В базе данных MySQL признак опциональности значений колонки (разрешено или запрещено колонке содержать значения NULL) не является частью системы типов данных. Ограничение (constraint) NOT NULL для любой колонки любой таблицы хранится в виде значения столбца IS_NULLABLE системной таблицы INFORMATION_SCHEMA.COLUMNS, то есть на уровне метаданных таблицы. Следовательно, все базовые типы MySQL® по умолчанию могут содержать значения NULL, и в системе типов YQ они должны отображаться в опциональные типы.

Ниже приведена таблица соответствия типов MySQL® и Yandex Query. Все остальные типы данных, за исключением перечисленных, не поддерживаются.

Тип данных MySQL® Тип данных Yandex Query
bool Optional<Bool>
tinyint Optional<Int8>
tinyint unsigned Optional<Uint8>
smallint Optional<Int16>
smallint unsigned Optional<Uint16>
mediumint Optional<Int32>
mediumint unsigned Optional<Uint32>
int Optional<Int32>
int unsigned Optional<Uint32>
bigint Optional<Int64>
bigint unsigned Optional<Uint64>
float Optional<Float>
real Optional<Float>
double Optional<Double>
date Optional<Utf8>
datetime Optional<Utf8>
timestamp Optional<Utf8>
tinyblob Optional<String>
blob Optional<String>
mediumblob Optional<String>
longblob Optional<String>
tinytext Optional<String>
text Optional<String>
mediumtext Optional<String>
longtext Optional<String>
char Optional<Utf8>
varchar Optional<Utf8>
binary Optional<String>
varbinary Optional<String>
json Optional<Json>

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

Предыдущая
Работа с базами данных Managed Service for Greenplum®
Следующая
Работа с базами данных Managed Service for PostgreSQL
Проект Яндекса
© 2025 ООО «Яндекс.Облако»