Ubuntu 上 pg_dump 的错误版本

Bil*_*ill 11 ubuntu apt postgresql-9.3

我最初在 Ubuntu 上安装了 postgres 9.2,后来根据这里的说明升级到 9.3:http : //www.postgresql.org/download/linux/ubuntu/(使用 postgres apt 存储库)。

但是,作为 /usr/share/postgresql-common/pg_wrapper 的别名的 pg_dump 没有升级。

pg_dump: server version: 9.3.4; pg_dump version: 9.2.8
pg_dump: aborting because of server version mismatch
Run Code Online (Sandbox Code Playgroud)

我如何升级这个?我试图找出哪些软件包需要更新,但我什至不确定这是正确的做法。

Bil*_*ill 12

事实证明,安装 9.3 客户端不会自动卸载 9.2 客户端,如果它们都在这样的机器上,那么这就是你得到的。答案是删除 postgresql-client-9.2(或任何适合您情况的旧版本)。

  • 对于升级客户端:像这样添加 postgresql 存储库 http://www.postgresql.org/download/linux/ubuntu/ 然后运行 ​​`apt-cache search postgresql-client-9` 并选择适合你的需求。 (2认同)

小智 9

如果您需要同时拥有多个版本的 postgresql 客户端,您可以使用

pg_dump --cluster 9.2/main [other pg_dump options]
Run Code Online (Sandbox Code Playgroud)

对于旧集群和

pg_dump --cluster 9.3/main [other pg_dump options]
Run Code Online (Sandbox Code Playgroud)

对于新的

查看askubuntu上接受的答案以了解详细信息:https ://askubuntu.com/a/647341/1044581


小智 8

我设法通过卸载 postgresql 客户端来解决我的问题

sudo apt-get remove postgresql-client-common
Run Code Online (Sandbox Code Playgroud)

然后重新安装

  sudo apt-get install postgresql-client-11
Run Code Online (Sandbox Code Playgroud)

  • 您可能需要添加最新 prostgres 版本的存储库:https://www.postgresql.org/download/linux/ubuntu/ (2认同)

sti*_*mur 6

您可能想检查命令的输出

dpkg -l | grep postgres

查看安装了哪些版本和活动的 pg_dump 通常是 postgresql-client-common 包的一部分。

(并编辑您的问题,不清楚您是如何从 9.3 版升级到 9.3 版的......)