我如何解决pg_dump:由于服务器版本不匹配而中止?

问题描述 投票:0回答:1

使用pg_dump实用程序进行数据库备份时,我遇到了以下错误。

root@lab1:~# pg_dump -Fc -h localhost -U postgres hrdb -f hrdb.dmp
Password: 
pg_dump: server version: 12.0 (Debian 12.0-2.pgdg100+1); pg_dump version: 10.10 (Ubuntu 10.10-0ubuntu0.18.04.1)
pg_dump: aborting because of server version mismatch
postgresql postgresql-9.3
1个回答
0
投票

您似乎安装了两个Postgres版本:

  • 版本10.10(Ubuntu 10.10-0ubuntu0.18.04.1),已随Ubuntu 18.04一起预包装
  • 通过PGDG Apt存储库安装的12.0版(Debian 12.0-2.pgdg100+1

您可以执行以下任一操作:

  • 通过输入整个路径使用/usr/lib/postgresql/12/bin/pg_dump
  • 使用apt卸载postgresql(不是postgresql-12
  • Ubuntu实际上将几个PG命令包装到一个名为pg_wrapper的程序中,因此您实际上可以执行以下操作而无需进行任何更改:pg_dump -Fc -h localhost -U postgres --cluster=12/localhost:$PGPORT hrdb -f hrdb.dmp
© www.soinside.com 2019 - 2024. All rights reserved.