来自 pgadmin3 的 pg_restore 错误 - Postgresql

San*_*and 8 postgresql pgadmin

我已经使用 pgadmin3 工具从 system1 备份了 postgresql 数据库。创建的备份文件的扩展名为“.backup”

我试图在安装了 postgresql 9.0 和 pgadmin3 1.8 的另一个系统 2 上恢复它,但我收到错误

无法执行查询:错误:无法识别的配置参数“lock_timeout” 命令为:SET lock_timeout = 0;

两个系统的配置

system1 win7-64 位 postgresql 9.0.13-1 - 64 位 pgadmin 1.8

system2 win7-32​​bit postgresql 9.0.13-1 - 32bit pgadmin 1.8

Dan*_*ité 6

lock_timeout 是 PostgreSQL 9.3 中出现的新参数

根据发行说明

添加配置变量 lock_timeout 以允许限制会话等待获取任何锁的时间(Zoltán Böszörményi)

这表明 pgadmin 正在使用 PostgreSQL 9.3pg_dump命令来进行备份,而不是 9.0。

仅在迁移到 9.3 时才建议这样做。由于目标服务器是 9.0,所以最好使用pg_dump已与 9.0 服务器一起安装的二进制文件。

外部二进制文件的路径可以在 pgAdmin 首选项中设置。要解决此问题,您可以将其设置为 9.0 安装的 bin 目录,然后再次尝试备份。

除此之外,作为一次性修复,您可以编辑纯文本的转储文件,删除有问题的行SET lock_timeout = 0;,希望这是版本不匹配引起的唯一问题。