在 Ubuntu 上意外安装了 postgres10 和 postgres12

在 Ubuntu 上意外安装了 postgres10 和 postgres12

Ubuntu 20.04 预装了 postgres10。大约 2 年前,我做了一个sudo apt-get install postgresql必须安装 postgres12 的工作。我从来没有注意到,当我sudo -u postgres psql(过去 2 年我创建了所有数据库的地方)它使用 psql12,但连接到服务器版本 10。

pg_lsclusters 显示 postgres10 监听默认端口 5432,而 postgres12 监听 5433。它们两个的状态都是“在线”。

问题

  1. 当我这样做时,sudo service postgresql status我想知道我实际上正在查看哪个 postgres 服务?我如何配置“sudo 服务”应该针对哪一个?

  2. 我怎样才能让 psql 指向 postgres12 而不是 postgres10?

答案1

您可以使用psql --port 5433。或者,如果此端口设置过于频繁,export PGPORT=5433

典型的网络服务在此处启动:/etc/systemd/system/multi-user.target.wants。也许您会发现两个 Postgres 启动服务,并且可以分析 Postgres 服务器是如何启动的。但由于我不知道您如何安装 2 个独立的 Postgres 服务器(通常,安装一个较新的服务器会替换前一个服务器),因此我无法提供更多帮助。

相关内容