无法恢复pg_dump备份

时间:2013-05-08 12:08:26

标签: postgresql postgresql-9.1 psql pg-dump

我正在尝试从Postgres 9.1.1恢复备份,后者由以下人员创建:

pg_dump mydb > backup.sql

恢复Postgres 9.1.9

psql -d mydb -f backup.sql

我收到了这个错误:

psql:datasets.sql:278537: invalid command \.
psql:datasets.sql:278544: ERROR:  syntax error at or near "1"
LINE 1: 1 4446 49 253.412262 239.618317 0 211.54303 100.482948 197.1...

\.COPY命令的一部分,我想它应该与Postgres 9版本兼容,或者它不兼容?

COPY data_136 (id, in_1, in_2, in_3, in_4, out_1) FROM stdin;
1       5.0999999       3.5     1.39999998      0.200000003     Iris-setosa
2       4.9000001       3       1.39999998      0.200000003     Iris-setosa
--- few more line cutted
150     5.9000001       3       5.0999999       1.79999995      Iris-virginica
\.

2 个答案:

答案 0 :(得分:1)

问题是由早期错误引起的:

ERROR:  permission denied for schema pg_catalog

我正在导入拥有数据库所有权限的用户,无论如何在postgres用户下运行导入解决了问题。

答案 1 :(得分:0)

出于同样的原因,我发生了这个错误:我以权限不足的用户身份登录。

为了完整起见,我将提到如何在指定执行操作的用户的同时进行恢复:

psql -U postgres -d mydb -f backup.sql