Evolution
Тема интерфейса

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

В этой инструкции описано, как сделать дамп базы данных PostgreSQL® с помощью утилиты pg_dump, а затем восстановить ее с помощью pg_restore. Вы можете восстановить одну базу данных за раз.

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

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

  2. Создайте виртуальную машину с ОС Ubuntu 24.04 в том же проекте, зоне доступности и подсети, где будет располагаться кластер Managed PostgreSQL®.

Внимание

Перенос пользователей через дамп базы данных невозможен.

Вы можете создать пользователей через личный кабинет или API. Не используйте имена dbadmin, postgres, cnpg__pooler__pgbouncer, streaming_replica, а также имена, начинающиеся на pg_, так как эти имена зарезервированы сервисом Managed PostgreSQL®.

Создайте дамп базы данных

Утилита pg_dump — встроенный инструмент для создания резервных копий в PostgreSQL®. Используйте команду:

pg_dump \
--dbname=<имя_базы_данных> \
--file=<путь_до_дампа> \
--format=c \
--inserts \
--disable-triggers \
--clean \
--if-exists \
--username=<имя_пользователя_базы_данных> \
--host=<адрес_базы> \
--port=<порт_базы> \
-O \
-x \
-v

Восстановите базу данных из дампа

Утилита pg_restore восстанавливает данные из резервных копий, которые были созданы с помощью pg_dump.

Внимание

У пользователя dbadmin нет прав на CREATE DATABASE, поэтому восстановление можно выполнить только в существующую базу данных. Вы можете создать базу данных через личный кабинет или API.

pg_restore -O -x \
--dbname=<имя_базы_данных> \
--username=<имя_пользователя> \
--host=<адрес_базы> \
--port=<порт_базы> \
--disable-triggers \
--clean \
--if-exists \
<путь_до_дампа> \
-v