2 个 postgresql 实例,但我确实需要一个

2 个 postgresql 实例,但我确实需要一个

我的机器上恰好安装了两个 postgresql 实例:9.1 和 9.2:

sudo service postgresql status
9.1/main (port 5432): down
9.2/main (port 5433): down

它们位于/etc/postgresql/9.1//etc/postgresql/9.2/。然后我运行9.2sudo service postgresql start但是这个命令失败了:

$ psql
psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

我确实只想使用9.2,我不需要 2 个实例。

您是否知道如何9.1安全地删除或使其9.2成为主要默认实例?

答案1

要删除 9.1 实例(假设您不想保留数据):

sudo pg_dropcluster 9.1 main

dpkg --get-selections | grep postgres
sudo apt-get purge postgresql-9.1 postgresql-client-9.1

这可能可以解决问题,但偶尔工具可能会抱怨它更喜欢让 9.2 实例在端口 5432 上运行。因此,在关闭 9.2 实例的情况下,编辑配置文件/etc/postgresql/9.2/main/postgresql.conf并更改port =设置。然后重新启动它。

答案2

安装软件包时postgresql,您将始终获得最新版本并保留旧版本。您可以安装postgresql-9.2以忽略较新版本并在真正需要时进行迁移。

相关内容