SQL-команда, эквивалентная pg_restore
Есть ли какая-либо команда SQL, эквивалентная pg_restore
? Хотя я могу подключиться к базе данных PostgreSQL (в AWS RDS), используя psycopg2
на Python, но не имеют разрешения на установку каких-либо бинарных пакетов, таких как pg_restore
, Как я могу восстановить дамп, сделанный с pg_dump
без pg_restore
?
2 ответа
На данный момент нет эквивалентной команды SQL (PostgreSQL 9.3).
Из справочной страницы pg_restore:
pg_restore может работать в двух режимах. Если указано имя базы данных, pg_restore подключается к этой базе данных и восстанавливает содержимое архива непосредственно в базу данных. В противном случае сценарий, содержащий команды SQL, необходимые для перестройки базы данных, создается и записывается в файл или стандартный вывод.
Таким образом, вы можете использовать pg_restore для создания серии команд SQL, которые затем можно загрузить в базу данных.
Документация AWS подразумевает, что вы можете загрузить этот файл SQL с помощью psql.
Обратите внимание, что на той же странице представлены подробные инструкции по созданию дампа с использованием pg_dump, который уже находится в форме SQL. Если вы сделаете это, вам вообще не нужно будет использовать pg_restore.