psql --version
psql (PostgreSQL) 9.3.5
我正在尝试仅恢复架构。我尝试了以下命令:
pg_restore -s -d rh /path/to/dump.sql
pg_restore: [archiver] input file appears to be a text format dump. Please use psql.
我试过查看psql的文档,但没有找到只有架构的标志。
如果您知道任何其他技术来实现这一点,我将非常感激。
如果它有助于我使用OSX版本10.10
答案 0 :(得分:4)
您可以使用-s生成文本转储文件,以便仅生成如下的模式转储:
pg_dump -s <database name> > pg_dump_text_filename
您应该使用psql命令连接到您的数据库:
psql -U <username> -d <databasename>
然后在psql提示符下使用:
\i <pg_dump_text_file_path>
您还可以使用pg_dump的存档文件格式:
pg_dump -Fc -f <archive file> <database name>
然后pg_restore只有架构:
pg_restore -d <database name> -s <archive file>