Я хочу использовать pg_dump
для выгрузки одной таблицы из базы данных и загрузки ее в новую пустую базу данных на другом хосте. Таблицы, которые я хочу вывести в реальном времени в определенных схемах в исходной базе данных, и я не могу определить команду pg_dump
для:
- Включить оператор
CREATE SCHEMA
для схемы, в которой находится таблица
- Удалите всю информацию о схеме, чтобы таблица загрузилась в "public".
Простая команда pg_dump
, например, так:
pg_dump postgresql://username:password@host:5432/dbname --format plain --file table_name.sql --table my_schema.my_table
Включает схему в оператор CREATE TABLE
, но не включает оператор CREATE SCHEMA
, поэтому запуск файла с psql
как есть завершается с ошибкой «схема не существует». Я проверил документацию pg_dump
и не увидел ничего очевидного, чтобы сделать то, что я ищу, хотя я пытался использовать флаг --create
- но это только создает базу данных, а не конкретную схему.
Я могу написать сценарий пост-обработки, чтобы изменить файл дампа и добавить оператор CREATE SCHEMA
или удалить схемы, но я бы не стал этого делать, если это возможно - я просто хочу иметь возможность запустите файл, созданный с pg_dump
.
Это возможно?
Заранее спасибо.