Как восстановить вывод из pg_dump в новое имя таблицы - PullRequest
1 голос
/ 20 мая 2019

Я сбрасываю большую таблицу Postgres следующим образом:

pg_dump -h myserver  -U mt_user --table=mytable  -Fc -Z 9 --file mytable.dump mydb

Выше создается файл mytable.dump. Теперь я хочу восстановить этот дамп в новую таблицу с именем mytable_restored.

Как я могу использовать команду pg_restore для этого?

1 Ответ

0 голосов
/ 21 мая 2019

Нет опции pg_restore для переименования таблиц.

Я бы сделал это так:

-- create a table that is defined like the original
CREATE TABLE mytable_restored (LIKE mytable INCLUDING ALL);

-- copy the table contents
COPY mytable TO '/tmp/mytable.dmp';
COPY mytable_restored FROM '/tmp/mytable.dmp';
...