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

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

  • Необходимые платные ресурсы
  • Перед началом работы
  • Подготовьте кластер-источник
  • Подготовьте и активируйте трансфер
  • Проверьте работоспособность трансфера
  • Удалите созданные ресурсы
  1. Практические руководства
  2. Загрузка данных в Object Storage
  3. MySQL® в Object Storage

Загрузка данных из MySQL® в Yandex Object Storage

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

С помощью сервиса Data Transfer вы можете перенести данные из кластера-источника Managed Service for MySQL® в объектное хранилище Yandex Object Storage.

Чтобы перенести данные:

  1. Подготовьте кластер-источник.
  2. Подготовьте и активируйте трансфер.
  3. Проверьте работоспособность трансфера.

Если созданные ресурсы вам больше не нужны, удалите их.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки описываемого решения входят:

  • Плата за кластер Managed Service for MySQL®: использование вычислительных ресурсов, выделенных хостам, и дискового пространства (см. тарифы Managed Service for MySQL®).
  • Плата за использование публичных IP-адресов, если для хостов кластера включен публичный доступ (см. тарифы Virtual Private Cloud).
  • Плата за бакет Object Storage: хранение данных и выполнение операций с ними (см. тарифы Object Storage).
  • Плата за каждый трансфер: использование вычислительных ресурсов и количество переданных строк данных (см. тарифы Data Transfer).

Перед началом работыПеред началом работы

Подготовьте инфраструктуру:

Вручную
Terraform
  1. Создайте кластер-источник Managed Service for MySQL® любой подходящей конфигурации.
  2. Создайте бакет в Yandex Object Storage.
  1. Если у вас еще нет Terraform, установите его.

  2. Получите данные для аутентификации. Вы можете добавить их в переменные окружения или указать далее в файле с настройками провайдера.

  3. Настройте и инициализируйте провайдер. Чтобы не создавать конфигурационный файл с настройками провайдера вручную, скачайте его.

  4. Поместите конфигурационный файл в отдельную рабочую директорию и укажите значения параметров. Если данные для аутентификации не были добавлены в переменные окружения, укажите их в конфигурационном файле.

  5. Скачайте в ту же рабочую директорию файл конфигурации data-transfer-mmy-objs.tf.

    В этом файле описаны:

    • сеть;
    • подсеть;
    • группа безопасности и правило, необходимое для подключения к кластеру Managed Service for MySQL®;
    • кластер-источник Managed Service for MySQL®;
    • сервисный аккаунт с ролями editor, storage.editor и storage.uploader;
    • бакет Object Storage;
    • эндпоинт для источника;
    • трансфер.
  6. Укажите в файле data-transfer-mmy-objs.tf:

    • folder_id — идентификатор каталога, в котором будут созданы ресурсы.

    • sa_name — имя сервисного аккаунта для создания бакета и использования в эндпоинте-приемнике.

    • bucket_name — имя бакета в Object Storage.

    • параметры кластера-источника Managed Service for MySQL®, которые будут использоваться как параметры эндпоинта-источника:

      • source_mysql_version — версия MySQL®;
      • source_db_name — имя базы данных;
      • source_user и source_password — имя и пароль пользователя-владельца базы данных.
    • transfer_enabled – значение 0, чтобы не создавать трансфер до создания эндпоинта-приемника вручную.

  7. Проверьте корректность файлов конфигурации Terraform с помощью команды:

    terraform validate
    

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

  8. Создайте необходимую инфраструктуру:

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

      terraform plan
      

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

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

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

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

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

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

Подготовьте кластер-источникПодготовьте кластер-источник

  1. Если вы создавали инфраструктуру вручную, подготовьте кластер-источник.

  2. Подключитесь к кластеру-источнику Managed Service for MySQL®.

  3. Наполните базу тестовыми данными. В качестве примера используется таблица с информацией, поступающей от датчиков автомобиля.

    Создайте таблицу:

    CREATE TABLE measurements (
        device_id varchar(200) NOT NULL,
        datetime timestamp NOT NULL,
        latitude real NOT NULL,
        longitude real NOT NULL,
        altitude real NOT NULL,
        speed real NOT NULL,
        battery_voltage real,
        cabin_temperature real NOT NULL,
        fuel_level real,
        PRIMARY KEY (device_id)
    );
    

    Наполните таблицу данными:

    INSERT INTO measurements VALUES
        ('iv9a94th6rzt********', '2022-06-05 17:27:00', 55.70329032, 37.65472196,  427.5,    0, 23.5, 17, NULL),
        ('rhibbh3y08qm********', '2022-06-06 09:49:54', 55.71294467, 37.66542005, 429.13, 55.5, NULL, 18, 32);
    

Подготовьте и активируйте трансферПодготовьте и активируйте трансфер

  1. Создайте эндпоинт для приемника:

    • Тип базы данных — Object Storage.

    • Параметры эндпоинта:

      • Настройки подключения:

        • Бакет — укажите имя бакета Object Storage.
        • Сервисный аккаунт — выберите или создайте сервисный аккаунт с ролью storage.uploader.
      • Имя папки — measurements.

  2. Создайте эндпоинт для источника и трансфер:

    Вручную
    Terraform
    1. Создайте эндпоинт для источника:

      • Тип базы данных — MySQL.

      • Параметры эндпоинта:

        • Настройки подключения:

          • Тип подключения — Кластер Managed Service for MySQL.

            Выберите кластер-источник из списка и укажите настройки подключения к нему.

        • (Опционально) Список включённых таблиц, Список исключённых таблиц — укажите регулярные выражения для переносимых таблиц и таблиц, которые не надо переносить.

    2. Создайте трансфер типа Копирование, использующий созданные эндпоинты.

    3. Активируйте его.

    1. Укажите в файле data-transfer-mmy-objs.tf переменные:

      • target_endpoint_id — значение идентификатора эндпоинта для приемника;
      • transfer_enabled – значение 1 для создания трансфера;
      • (опционально) include_tables_regex, exclude_tables_regex – регулярные выражения для переносимых таблиц и таблиц, которые не надо переносить.
    2. Проверьте корректность файлов конфигурации Terraform с помощью команды:

      terraform validate
      

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

    3. Создайте необходимую инфраструктуру:

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

        terraform plan
        

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

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

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

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

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

      Трансфер активируется автоматически после создания.

Проверьте работоспособность трансфераПроверьте работоспособность трансфера

  1. Дождитесь перехода трансфера в статус Завершен.

  2. Убедитесь, что данные перенеслись из кластера-источника Managed Service for MySQL® в бакет Object Storage:

    1. В консоли управления выберите каталог, в котором находится нужный бакет.
    2. В списке сервисов выберите Object Storage.
    3. Выберите бакет из списка.
    4. Перейдите на вкладку Объекты.
    5. Проверьте, что бакет Object Storage содержит папку measurements с объектом <имя_базы_данных_кластера-источника>_measurements с тестовыми данными.

Удалите созданные ресурсыУдалите созданные ресурсы

Примечание

Перед тем как удалить созданные ресурсы, деактивируйте трансфер.

Некоторые ресурсы платные. Чтобы за них не списывалась плата, удалите ресурсы, которые вы больше не будете использовать:

  1. Удалите трансфер.
  2. Удалите эндпоинт для приемника.

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

Вручную
Terraform
  1. Удалите эндпоинт для источника.
  2. Удалите бакет Object Storage.
  3. Удалите кластер Managed Service for MySQL®.
  4. Если при создании эндпоинта для приемника вы создавали сервисный аккаунт, удалите его.
  1. В терминале перейдите в директорию с планом инфраструктуры.

    Важно

    Убедитесь, что в директории нет Terraform-манифестов с ресурсами, которые вы хотите сохранить. Terraform удаляет все ресурсы, которые были созданы с помощью манифестов в текущей директории.

  2. Удалите ресурсы:

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

      terraform destroy
      
    2. Подтвердите удаление ресурсов и дождитесь завершения операции.

    Все ресурсы, которые были описаны в Terraform-манифестах, будут удалены.

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

Предыдущая
OpenSearch в ClickHouse®
Следующая
PostgreSQL в Object Storage
Проект Яндекса
© 2025 ООО «Яндекс.Облако»