Разверните OpenClaw в облаке в один клик
Вход/ Регистрация
На главную
Облачные сервисы

Логические бэкапы

Для кластеров баз данных MySQL и PostgreSQL доступны логические бэкапы. В отличие от физических бэкапов, при их создании не выполняется снимок всей системы. Вместо этого формируются дампы баз данных, которые сохраняются в S3-бакет.

Бэкапы сохраняются в виде SQL-дампа. Перед загрузкой в бакет они архивируются. Точный размер копии заранее определить невозможно — он зависит от структуры и объема данных базы.

Сейчас логические бэкапы находятся в стадии бета-тестирования. Не используйте их как единственный способ резервного копирования важных данных. 

На время тестирования создание и хранение бэкапов не тарифицируется. После завершения бета-тестирования стоимость хранения составит 6 ₽ за 1 ГБ в месяц.

Особенности логических бэкапов

  • При включении логических бэкапов автоматически создается S3-бакет с доступом только на чтение.
  • Для кластера одновременно могут использоваться физические и логические бэкапы.
  • В логических бэкапах не сохраняются пользователи и привилегии кластера.
  • Трафик бакета учитывается в бесплатном лимите S3-трафика. При его превышении дополнительная тарификация не применяется.
  • При удалении кластера S3-бакет с резервными копиями сохраняется. Дампы баз данных остаются в бакете, поэтому вы сможете создать новый кластер и восстановить данные из сохраненного дампа.
  • Логические бэкапы доступны только в BGP-сетях.

Автоматическое резервное копирование

Логические бэкапы можно включить на этапе создания кластера.

Image1

При включении логических резервных копий на этапе создания кластера:

  • резервные копии создаются ежедневно;

  • одновременно хранится одна копия.

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

Также логические бэкапы можно включить для уже существующего кластера. Для этого:

  1. Перейдите в раздел «Бэкапы».

  2. Нажмите кнопку «Настроить расписание» в строке «Логические бэкапы».

Image4

В открывшемся окне включите автоматическое создание бэкапов и укажите:

  • периодичность — ежедневно, еженедельно или ежемесячно;

  • количество одновременно хранимых копий.

После этого нажмите «Сохранить».

Image5

Если для кластера ранее не создавались логические бэкапы, будет автоматически создан S3-бакет. Он отобразится в разделе «Хранилище S3» с пометкой «Бэкапы БД».

Image7

Ручное резервное копирование

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

  1. Перейдите в раздел «Бэкапы».

  2. Нажмите кнопку «Создать бэкап».

  3. В открывшемся меню при необходимости укажите комментарий к бэкапу.

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

Image6

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

Восстановление данных из резервной копии

На время бета-тестирования восстановление из резервной копии через панель управления недоступно. Вы можете восстановить данные вручную. Для этого скачайте SQL-дамп из S3-бакета.

SQL-дампы находятся в S3-бакете, который создаётся для хранения резервных копий. Подключиться к бакету можно с помощью S3-клиентов или через панель управления, перейдя в раздел «Объекты» выбранного бакета.

Image3

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

Распакуйте скачанный дамп:

    
gzip -dk имя_дампа.sql.gz

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

Затем отредактируйте дамп с помощью команды, указав имя файла дампа вместо имя_дампа.sql:

    
sed -E ' /^SET /d; /^\/\*![0-9]+ SET /d; /rocksdb_/d; /^\/\*![0-9]+ PREPARE s FROM @/d; /^\/\*![0-9]+ EXECUTE s \*\//d; /^\/\*![0-9]+ DEALLOCATE PREPARE s \*\//d ' имя_дампа.sql > backup_clean.sql

В результате будет создан очищенный дамп backup_clean.sql, который можно использовать для восстановления.

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

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

    
SET FOREIGN_KEY_CHECKS=0;

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

    
SELECT CONCAT('DROP TABLE IF EXISTS `', table_name, '`;') FROM information_schema.tables WHERE table_schema='имя_базы';

Скопируйте полученные команды DROP TABLE и выполните их, чтобы удалить существующие таблицы.

После этого снова включите проверку внешних ключей:

    
SET FOREIGN_KEY_CHECKS=1;

Затем выйдите из интерактивной оболочки MySQL (Ctrl+D).

Если для кластера настроена репликация, на время восстановления установите параметр pxc_strict_mode в значение PERMISSIVE или DISABLED.

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

    
mysql -u gen_user -p'pdn?Uu1337oUeOp' \ -h f767dae90b23251eee5474.twc1.net \ -P 3306 \ -D default_db \ --ssl-mode=VERIFY_IDENTITY \ --ssl-ca=$HOME/.cloud-certs/root.crt \ < backup_clean.sql

После выполнения команды данные из дампа будут импортированы в базу.

Управление резервными копиями

Все резервные копии отображаются в разделе «Бэкапы». Чтобы открыть список копий, нажмите на кнопку с их количеством.

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

Image2

Отключение логических бэкапов

Чтобы отключить создание логических бэкапов:

  1. Перейдите во вкладку «Бэкапы».

  2. Нажмите кнопку «Настроить расписание» в строке «Логические бэкапы».

  3. В открывшемся окне переведите переключатель в состояние «Выключено».

После этого новые резервные копии создаваться не будут. 

Уже созданные бэкапы в S3-бакете продолжат тарифицироваться. Во время бета-тестирования тарификация не применяется, но после его завершения удалённый бакет будет тарифицироваться.

Чтобы прекратить списания, удалите ненужные резервные копии вручную или удалите S3-бакет с бэкапами целиком.

Была ли статья полезна?
Ваша оценка очень важна
Пока нет комментариев