С помощью этого руководства вы создадите дамп базы данных PostgreSQL® через pg_dump, а затем восстановите базу с помощью pg_restore. Восстановить данные можно только в существующую базу данных. За раз вы можете восстановить одну базу данных.
Шаги:
Перед началом работы
-
Если вы уже зарегистрированы, войдите под своей учетной записью.
1. Разверните необходимые ресурсы в облаке
Создайте виртуальную машину с ОС Ubuntu 24.04 в том же проекте, зоне доступности и подсети, где будет располагаться кластер Managed PostgreSQL®.
Убедитесь, что вы можете подключиться к виртуальной машине по SSH.
2. Создайте дамп базы данных
Перенос пользователей через дамп базы данных невозможен.
Вы можете создать пользователей через личный кабинет или API. Не используйте имена dbadmin, postgres, cnpg__pooler__pgbouncer, streaming_replica, а также имена, начинающиеся на pg_, так как эти имена зарезервированы сервисом Managed PostgreSQL®.
Утилита pg_dump — встроенный инструмент для создания резервных копий в PostgreSQL®.
Используйте команду:
pg_dump \--dbname=<database_name> \--file=<dump_file_path> \--format=c \--inserts \--disable-triggers \--clean \--if-exists \--username=<database_user_name> \--host=<database_host> \--port=<database_port> \-O \-x \-v
Где:
<database_name> — имя базы данных.
<dump_file_path> — путь до файла дампа.
<database_user_name> — имя пользователя базы данных.
<database_host> — хост базы данных.
<database_port> — порт базы данных.
3. Восстановите базу данных из дампа
Утилита pg_restore восстанавливает данные из резервных копий, которые были созданы с помощью pg_dump.
У пользователя dbadmin нет прав на CREATE DATABASE, поэтому восстановление можно выполнить только в существующую базу данных. Вы можете создать базу данных через личный кабинет или API.
pg_restore -O -x \--dbname=<database_name> \--username=<database_user_name> \--host=<database_host> \--port=<database_port> \--disable-triggers \--clean \--if-exists \<dump_file_path> \-v
Где:
<database_name> — имя базы данных.
<database_user_name> — имя пользователя базы данных.
<database_host> — хост базы данных.
<database_port> — порт базы данных.
<dump_file_path> — путь до файла дампа.
Результат
Вы создали дамп базы данных PostgreSQL® с помощью утилиты pg_dump, а затем восстановили базу с помощью pg_restore.
- Перед началом работы
- 1. Разверните необходимые ресурсы в облаке
- 2. Создайте дамп базы данных
- 3. Восстановите базу данных из дампа
- Результат