Инструкция по управлению DBAAS

11 апр, 2025

Основы Database as a Service (DBaaS)

Database as a Service, или база данных как сервис, — это облачное решение, которое позволяет использовать базы данных без необходимости администрирования серверов. Провайдер берет на себя установку, обновление, резервное копирование и масштабирование, а пользователи работают с готовой инфраструктурой.

Преимущества использования DBaaS для бизнеса:

  • снижение затрат на поддержку серверов и СУБД,
  • упрощенная настройка — все ключевые параметры конфигурации БД оптимизированы провайдером,
  • возможность масштабировать ресурсы в пару кликов,
  • автоматизация резервного копирования и восстановления,
  • высокая отказоустойчивость и безопасность,
  • возможность работы с разными типами баз данных.

Выбор подходящей СУБД

Перед запуском проекта важно выбрать оптимальную СУБД в зависимости от требований вашего проекта:

  • MySQL — популярна для веб-приложений и корпоративных сервисов;
  • PostgreSQL — используется для аналитики и сложных операций с данными;
  • MongoDB — подходит для NoSQL-хранилищ;
  • Redis — применяется для кэширования и работы с сессиями пользователей.

Виды конфигураций баз данных в DBaaS

В Database as a Service (DBaaS) доступно несколько типов конфигураций баз данных, которые подбираются в зависимости от нагрузки, требований к отказоустойчивости и характеристик системы. Рассмотрим основные варианты.
1. Одиночный инстанс (Single Instance). Этот вариант представляет собой отдельный сервер базы данных, который может работать без репликации, а резервное копирование зависит от настроек провайдера. В некоторых DBaaS-сервисах бэкапы могут выполняться автоматически.
2. Кластер с репликацией (Master-Slave). В такой конфигурации есть основной сервер (Master), принимающий все записи, и реплики (Slave), которые используются для чтения.
3. Мульти-мастер (Multi-Master Replication). В этой конфигурации несколько серверов принимают запросы на запись и чтение, обеспечивая равномерную нагрузку.
4. Шардированный кластер (Sharded Cluster). База данных разделяется на несколько частей (шардов), которые хранятся на разных серверах.
5. Конфигурация с автоматическим резервным копированием (Backup & Restore). Включает резервные копии и снапшоты, которые хранятся в облаке для быстрого восстановления.

Выбор конфигурации зависит от нагрузки, требований к доступности и бюджета. Для тестов подойдет Single Instance, для коммерческих проектов лучше использовать Master-Slave или Multi-Master, а для крупных распределенных систем — Sharded Cluster.

Как удаленно подключиться к базе данных

Для подключения к облачной базе данных MySQL потребуются:

  • IP-адрес,
  • номер порта,
  • имя пользователя,
  • пароль пользователя.

Информация для подключения приходит на контактный email в стартовом письме после создания кластера:

Если письмо утеряно

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

Также вы можете узнать логин пользователя и изменить пароль. Для этого:

  1. Авторизуйтесь в панели управления.
  2. Выберите раздел Базы данных и перейдите в настройки кластера:

  1. Внизу страницы нажмите на иконку карандаша, чтобы отредактировать данные. Придумайте или сгенерируйте новый пароль. Нажмите кнопку Сохранить:

  1. Сохраните внесенные изменения, для этого нажмите кнопку Сохранить внизу страницы:

Готово, доступ к кластеру восстановлен.

  1. Перед подключением убедитесь, что у вас установлен mysql-клиент. Выполните команду:
mysql --version
  1. Если не установлен, поставьте его:
sudo apt install mysql-client     # для Debian/Ubuntu
sudo yum install mysql            # для CentOS
  1. Для удаленного подключения к облачной базе данных воспользуйтесь командой:
mysql -P12345 -h123.123.123.123 -u username -p

Где:

  • 12345 — номер порта,
  • 123.123.123.123 — IP-адрес сервера,
  • username — имя пользователя,

Введите пароль пользователя.

  1. Проверить подключение можно с помощью команды:
telnet 123.123.123.123 12345

Где:

  • 123.123.123.123 — IP-адрес сервера БД,
  • 12345 — порт подключения к кластеру.

Если подключение стабильно, ответ будет выглядеть так:

Trying 123.123.123.123...
Connected to 123.123.123.123.
Escape character is '^]'.
O
xDH4Mcaching_sha2_password2
 

Создание базы данных

В панели управления

  1. Перейдите в панель управления облачными серверами.
  2. Откройте вкладку Базы данных и перейдите в настройки кластера:

  1. В разделе «Базы данных» нажмите +Создать новую базу данных, придумайте имя и выберите пользователей, которым она будет доступна. Нажмите Сохранить:

Готово, новый проект создан.

Консоль

  1. Выполните команду:
CREATE DATABASE имя_бд;

База будет создана с настройками по умолчанию. 

  1. Если хотите явно задать кодировку БД, то воспользуйтесь командой:
CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
​​​​
  1. Проверьте создана ли база:
SHOW DATABASES;

Как создать нового пользователя в MySQL

В панели управления

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

  1. Перейдите в панель управления облачными серверами.
  2. Откройте вкладку Базы данных и перейдите в настройки кластера:

  1. В разделе «Пользователи» кликните +Добавить нового пользователя:

  1. Создайте логин и пароль. Нажмите Добавить, чтобы сохранить изменения:

Готово, пользователь создан.

В консоли

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

CREATE USER 'new_user'@'%' IDENTIFIED BY 'your_password';

  • new_user — логин нового пользователя;
  • % означает, что пользователь сможет подключаться с любого IP-адреса. Можно заменить на конкретный IP;
  • your_password — задайте безопасный пароль.

Как изменить права доступа в MySQL

В панели управления облачными серверами можно назначить права на базу данных отдельным пользователям в MySQL.

В панели управления

  1. Перейдите в панель управления облачными серверами.
  2. Откройте вкладку Базы данных и перейдите в настройки кластера:

  1. В разделе Базы данных выберите пользователей, которым необходимо дать доступ к базе:

Если вы хотите забрать права на базу, снимите галочки с выбранных пользователей. Сохраните изменения.

В консоли

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

GRANT ALL PRIVILEGES ON your_database.* TO 'new_user'@'%';

Если нужен доступ только к чтению:

GRANT SELECT ON your_database.* TO 'new_user'@'%';

Если хотите дать выборочные права (например, чтение и запись):

GRANT SELECT, INSERT, UPDATE ON your_database.* TO 'new_user'@'%';

Примените изменения с помощью команды: 

FLUSH PRIVILEGES;

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