pg_restore -t: восстановить одну таблицу из custom dump
Для точечного восстановления из custom-format pg_dump передайте pg_restore таблицу через -t. Сначала восстановите её в отдельную базу или схему и проверьте данные, прежде чем переносить поверх production.
Рабочий пример
pg_restore --list backup.dump | grep ' TABLE public orders '
createdb restore_check
pg_restore --dbname=restore_check --table=orders --no-owner backup.dump
psql restore_check -c 'SELECT count(*) FROM public.orders;'Архивный список покажет объекты, доступные для восстановления. --no-owner не пытается назначить исходного владельца; при необходимости задайте новую схему через --schema.
Частый вопрос
Скопируются ли внешние ключи автоматически?
Ограничения зависят от содержимого архива и выбранных объектов. Используйте pg_restore --list и восстанавливайте связанные зависимости осознанно.