PostgreSQL - 从数据库转储中恢复一个表

时间:2016-07-21 15:45:05

标签: postgresql

如何从数据库转储中恢复一个表?我使用下一个命令进行转储:

pg_dump -U admin -h localhost my-db-name | gzip - > /home/a2_db_backup/my-db-name-backup.sql.gz

1 个答案:

答案 0 :(得分:6)

没有简单的方法,除了一些黑客(比如使用awk剪切文件的一部分)。

如果转储不是太大,最简单的方法是将完整备份恢复到临时数据库(gzcat backup_file.gz | psql -h host -U user database_name)转储一个表(pg_dump -t my_table),然后将其恢复。

将来可以采用自定义格式(pg_dump -Fc > database.dump)。您可以使用pg_restore恢复单个表:pg_restore -t my_table -d database_name database.dump