我已经安装了 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
基本上交换端口值。