psql 命令“错误:未安装 PostgreSQL 版本 12”

psql 命令“错误:未安装 PostgreSQL 版本 12”

我已经安装了 PostgreSQL 11,但由于某种原因,当我psql在终端中输入时出现PostgreSQL version 12 is not installed错误

最近我卸载了一个 PostgreSQL 服务器,我觉得我做得不好

我怎样才能获得 psql 命令执行版本 11 而不是 12

截屏

答案1

我已经重现了您的情况,下面是我解决问题的方法:

如果要完全删除它,请使用sudo apt purge postgresql-12应答:Yes

  ┌───────────────────────────────────────────────────────────────────┤ Configuring postgresql-11 ├────────────────────────────────────────────────────────────────────┐
  │                                                                                                                                                                    │ 
  │ Removing the PostgreSQL server package will leave existing database clusters intact, i.e. their configuration, data, and log directories will not be removed. On   │ 
  │ purging the package, the directories can optionally be removed.                                                                                                    │ 
  │                                                                                                                                                                    │ 
  │ Remove PostgreSQL directories when package is purged?                                                                                                              │ 
  │                                                                                                                                                                    │ 
  │                                                  <Yes>                                                     <No>                                                    │ 
  │                                                                                                                                                                    │ 
  └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ 

在这之后:

sudo psql --version
psql (PostgreSQL) 11.7 (Ubuntu 11.7-2.pgdg19.10+1)

答案2

我安装了postgresql-13,然后“回滚”到postgresql-client-12操作系统升级后。我发现了一个僵尸/etc/postgresql/13目录并将其删除,现在我可以成功执行psql

答案3

只需将目录移动到其他位置并仅保留安装在该目录中/etc/postgresql/12的版本。pg_dump

strace pg_dump|& grep open我通过发出命令发现了这一点

答案4

该问题实际上是由配置文件中的 postgresql 端口映射问题引起的。

默认情况下,Kali 附带 postgres 12(自 2020.3 起附带 postgres 13),但 OpenVAS 需要版本 13。Kali 将 postgres 12 配置到端口 5532,并为 postgres 13 分配更高的端口(在本例中为 5433)。OpenVAS 仍在寻找 5432,因此即使安装了 13,也会看到 postgres 12。

如果可以的话,删除 postgresql 12...如果不行

一个快速的解决方法是编辑“port = ”行

/etc/postgresql/12/main/postgresql.conf 端口 = 5433

/etc/postgresql/13/main/postgresql.conf 端口 = 5432

基本上交换端口值。

相关内容