Yandex Cloud
  • Сервисы
  • Решения
  • Почему Yandex Cloud
  • Сообщество
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
Yandex Managed Service for ClickHouse
  • Начало работы
  • Пошаговые инструкции
    • Все инструкции
    • Информация об имеющихся кластерах
    • Создание кластера
    • Подключение к базе данных
    • Остановка и запуск кластера
    • SQL-запросы в консоли управления
    • Изменение настроек кластера и базы данных
    • Настройка доступа к ObjectStorage
    • Подключение внешних словарей
    • Подключение собственной геобазы
    • Управление моделями машинного обучения
    • Управление схемами формата данных
    • Подключение к DataLens
    • Изменение версии ClickHouse
    • Управление хостами ZooKeeper
    • Управление хостами ClickHouse
    • Управление базами данных
    • Управление пользователями БД
    • Управление резервными копиями
    • Управление шардами
    • Управление группами шардов
    • Просмотр логов кластера
    • Удаление кластера
    • Мониторинг состояния кластера и хостов
  • Практические руководства
    • Все сценарии
    • Добавление данных в БД
    • Шардирование таблиц
    • Использование гибридного хранилища
    • Получение данных из Managed Service for Apache Kafka®
    • Получение данных из RabbitMQ
    • Обмен данными с Yandex Data Proc
    • Настройка Yandex Cloud DNS для доступа к кластеру из других облачных сетей
    • Анализ логов Object Storage при помощи DataLens
    • Настройка Managed Service for ClickHouse для Graphite
    • Сохранение потока данных Yandex Data Streams в Managed Service for ClickHouse
    • Миграция базы данных из Google BigQuery в Managed Service for ClickHouse
    • Поставка данных из Yandex Managed Service for Apache Kafka® с помощью Yandex Data Transfer
  • Концепции
    • Взаимосвязь ресурсов сервиса
    • Классы хостов
      • Действующие классы хостов
      • Архив
        • До 1 июня 2020 года
      • Использование устаревших классов хостов
    • Сеть в Managed Service for ClickHouse
    • Квоты и лимиты
    • Типы дисков
    • Резервные копии
    • Репликация
    • Словари
    • Шардирование
    • Техническое обслуживание
    • Поддерживаемые клиенты
    • Управление памятью в Managed Service for ClickHouse
    • Политика работы с версиями ClickHouse
    • Настройки ClickHouse
  • Управление доступом
  • Правила тарификации
    • Действующие правила
    • Архив
      • До 1 января 2019 года
      • С 1 января до 1 марта 2019 года
      • С 1 марта 2019 года до 1 февраля 2020 года
  • Справочник API
    • Аутентификация в API
    • gRPC (англ.)
      • Overview
      • BackupService
      • ClusterService
      • DatabaseService
      • FormatSchemaService
      • MlModelService
      • ResourcePresetService
      • UserService
      • VersionsService
      • OperationService
    • REST (англ.)
      • Overview
      • Backup
        • Overview
        • get
        • list
      • Cluster
        • Overview
        • addHosts
        • addShard
        • addZookeeper
        • backup
        • create
        • createExternalDictionary
        • createShardGroup
        • delete
        • deleteExternalDictionary
        • deleteHosts
        • deleteShard
        • deleteShardGroup
        • get
        • getShard
        • getShardGroup
        • list
        • listBackups
        • listExternalDictionaries
        • listHosts
        • listLogs
        • listOperations
        • listShardGroups
        • listShards
        • move
        • rescheduleMaintenance
        • restore
        • start
        • stop
        • streamLogs
        • update
        • updateExternalDictionary
        • updateHosts
        • updateShard
        • updateShardGroup
      • Database
        • Overview
        • create
        • delete
        • get
        • list
      • FormatSchema
        • Overview
        • create
        • delete
        • get
        • list
        • update
      • MlModel
        • Overview
        • create
        • delete
        • get
        • list
        • update
      • ResourcePreset
        • Overview
        • get
        • list
      • User
        • Overview
        • create
        • delete
        • get
        • grantPermission
        • list
        • revokePermission
        • update
      • Versions
        • Overview
        • list
      • Operation
        • Overview
        • get
  • История изменений
  • Вопросы и ответы
    • Общие вопросы
    • Вопросы о ClickHouse
    • Подключение
    • Изменение кластера
    • Настройки параметров кластера
    • Перемещение и восстановление кластера
    • Мониторинг и логи
    • Все вопросы на одной странице
  1. Пошаговые инструкции
  2. Управление базами данных

Управление базами данных в Managed Service for ClickHouse

Статья создана
Yandex Cloud
  • Управление базами данных через SQL
  • Получить список баз данных в кластере
  • Создать базу данных
  • Удалить базу данных

Managed Service for ClickHouse позволяет управлять базами данных кластера двумя способами:

  • С помощью стандартных интерфейсов Yandex Cloud (CLI, API, консоль управления). Способ подходит, если вы хотите создавать и удалять базы данных кластера, используя возможности сервиса Yandex Managed Service for ClickHouse.
  • С помощью SQL-запросов к кластеру. Способ подходит, если вы хотите использовать уже существующее у вас решение для создания и управления базами данных или если вам требуется поддержка MySQL баз данных в Managed Service for ClickHouse.

Управление базами данных через SQL

Чтобы включить управление, выберите опции Управление пользователями через SQL и Управление базами данных через SQL при создании или изменении настроек кластера.

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

  • Управление базами данных и пользователями через стандартные интерфейсы Yandex Cloud (CLI, API, консоль управления) недоступно.
  • Невозможно включить управление пользователями и базами данных с помощью стандартных интерфейсов Yandex Cloud.
  • Существующие пользователи, настройки пользователей и базы данных, созданные с помощью стандартных интерфейсов Yandex Cloud, будут сохранены.
  • Управление осуществляется с помощью учетной записи admin. Пароль для нее задается при выборе опций Управление пользователями через SQL и Управление базами данных через SQL.

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

Консоль управления
CLI
API
SQL
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
  2. Нажмите на имя нужного кластера, затем выберите вкладку Базы данных.

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

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

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

yc managed-clickhouse database list \
   --cluster-name=<имя кластера>

Имя кластера можно запросить со списком кластеров в каталоге.

Получить список баз данных кластера можно с помощью метода list.

  1. Подключитесь к кластеру, используя учетную запись admin.

  2. Получите список баз данных:

    SHOW DATABASES;
    

Создать базу данных

Примечание

В каждом кластере вы можете создать не более 1000 баз данных.

Консоль управления
CLI
Terraform
API
SQL
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.

  2. Нажмите на имя нужного кластера.

  3. Выберите вкладку Базы данных.

  4. Нажмите кнопку Добавить.

  5. Введите имя для базы данных и нажмите кнопку Добавить.

    Примечание

    Имя базы может содержать латинские буквы, цифры и нижнее подчеркивание. Максимальная длина имени 63 символа. Запрещено создание базы данных с именем default.

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

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

Выполните команду создания БД, задав имя новой базы:

yc managed-clickhouse database create <имя базы данных> \
   --cluster-name=<имя кластера>

Примечание

Имя базы может содержать латинские буквы, цифры и нижнее подчеркивание. Максимальная длина имени 63 символа. Запрещено создание базы данных с именем default.

Имя кластера можно запросить со списком кластеров в каталоге.

Managed Service for ClickHouse запустит операцию создания базы данных.

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

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

  2. Добавьте к описанию кластера Managed Service for ClickHouse блок описания базы данных database:

    resource "yandex_mdb_clickhouse_cluster" "<имя кластера>" {
      ...
      database {
        name = "<имя базы данных>"
      }
    }
    

    Примечание

    Имя базы может содержать латинские буквы, цифры и нижнее подчеркивание. Максимальная длина имени 63 символа. Запрещено создание базы данных с именем default.

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

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

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

      terraform validate
      

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

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

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

      terraform plan
      

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

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

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

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

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

Подробнее см. в документации провайдера Terraform.

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

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

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

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

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

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

resource "yandex_mdb_clickhouse_cluster" "<имя кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}

Создать новую базу данных в кластере можно с помощью метода create.

  1. Подключитесь к кластеру, используя учетную запись admin.

  2. Создайте базу данных:

    CREATE DATABASE <имя базы данных>;
    

    Примечание

    Имя базы может содержать латинские буквы, цифры и нижнее подчеркивание. Максимальная длина имени 63 символа. Запрещено создание базы данных с именем default.

Подробнее о создании баз данных см. в документации ClickHouse.

Удалить базу данных

Консоль управления
CLI
Terraform
API
SQL
  1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
  2. Нажмите на имя нужного кластера и выберите вкладку Базы данных.
  3. Нажмите на значок в строке нужной БД и выберите пункт Удалить.

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

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

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

yc managed-clickhouse database delete <имя базы данных> \
   --cluster-name=<имя кластера>

Имя кластера можно запросить со списком кластеров в каталоге.

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

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

  2. Удалите из описания кластера Managed Service for ClickHouse блок database с описанием базы данных.

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

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

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

      terraform validate
      

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

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

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

      terraform plan
      

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

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

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

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

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

Подробнее см. в документации провайдера Terraform.

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

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

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

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

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

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

resource "yandex_mdb_clickhouse_cluster" "<имя кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}

Удалить базу данных можно с помощью метода delete.

  1. Подключитесь к кластеру, используя учетную запись admin.

  2. Удалите базу данных:

    DROP DATABASE <имя базы данных>;
    

Подробнее об удалении объектов см. в документации ClickHouse.

Важно

Прежде чем создать новую базу с тем же именем, дождитесь завершения операции удаления, иначе будет восстановлена удаляемая база. Статус операции можно получить вместе со списком операций в кластере.

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

Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
В этой статье:
  • Управление базами данных через SQL
  • Получить список баз данных в кластере
  • Создать базу данных
  • Удалить базу данных