运行pg_restore时出现“[archiver] unsupported version (1.13) in file header”的错误提示

172

我刚刚在Mac OS上升级到了Postgres 10.2版本,这与Heroku上的版本相匹配。我现在想要下载数据库的副本并将其恢复到本地。在升级之前,这个操作是可以正常工作的。

我运行以下命令:

pg_restore --verbose --clean --no-acl --no-owner -h localhost -d database_name backup.dump

但我遇到了这个错误:

pg_restore:[archiver]文件头中的版本(1.13)不受支持

数据库似乎正常工作。这是一个Rails应用程序,我升级了pg宝石。我可以顺利运行rake db:createdb:migrate

14个回答

2
您正在使用旧版的 pg_restore 二进制文件,不支持还原提供的转储文件。请确保使用最新的 Postgres 版本,其必须高于以下发布版本:https://www.postgresql.org/about/news/1834/(10.3、9.6.8、9.5.12、9.4.17和9.3.22)。
您可以通过运行 pg_restore --version 命令来检查您正在使用的 pg_restore 版本。
如果您正在使用 PgAdmin 等第三方工具还原提供的转储文件,则即使安装的 Postgres 版本是最新的,还原也可能无法成功。这是因为第三方工具通常捆绑了自己的 pg_restore 二进制文件,可能没有更新到最新版本。

0

我遇到了同样的错误。我在本地更新到postgresql 10.3,这解决了我的问题。


-1

针对Windows系统:

打开命令提示符(cmd),然后进入位置C:\Program Files\PostgreSQL\9.6\bin并运行以下命令:

pg_restore -U username -d dbname -1 filename.dump
pg_restore -U postgres -d app -1 G:\app09-07-2019.backup

希望能对你有所帮助。

-3

3
奇怪。我从Heroku创建了一个转储文件,但出现了同样的问题。这从未发生过。 我尝试将PostgreSQL从9.6升级到10,但没有成功。 - karantan
1
你使用的是10.2还是10.3?我认为现在必须使用10.3。 - Jack Kinsella
那个邮件列表的主题是从2005年开始的。这里最近发生了一些变化,与该主题中的问题不同。 - Yetanotherjosh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接