如何恢复postgres数据库

时间:2016-07-30 13:42:31

标签: postgresql

我在系统上做了pg_dumpall -c -f <BACKUP_FILE>.sql,我想在另一个系统上进行恢复,让postgres为我创建所有角色/数据库/表空间,是否可能?

2 个答案:

答案 0 :(得分:0)

PostgreSQL文档中清楚地概述了这一点。

https://www.postgresql.org/docs/9.5/static/backup-dump.html

<强> 24.1.1。恢复转储

pg_dump创建的文本文件旨在由psql程序读入。恢复转储的常规命令表单是

psql dbname < infile

其中infile是pg_dump命令输出的文件。此命令不会创建数据库dbname,因此您必须在执行psql之前自己从template0创建它(例如,使用createdb -T template0 dbname)。 psql支持类似于pg_dump的选项,用于指定要连接的数据库服务器以及要使用的用户名。有关更多信息,请参阅psql参考页面。使用pg_restore实用程序恢复非文本文件转储。

答案 1 :(得分:0)

问题是最新的PE使用postgres 9.4,我可以毫无错误地恢复到运行postgres 9.5的postgres服务器。我的不好,应该首先检查PE puppetDB服务器上的rpm。