postgresql的2个实例,但我真的需要一个

我碰巧在我的机器上安装了2个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/ 。 然后我运行sudo service postgresql start运行9.2

但是这个命令失败了:

 $ 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成为主要的默认实例?

在升级到较新的版本时,Ubuntu中有两个群集可能会发生这种情况,提供更新的postgresql版本。

自动升级不会删除旧的群集,可能是因为害怕删除有价值的数据(这是明智的,因为一些postgres升级可能需要人工完成)。

如果您知道要删除它,请运行:

 sudo pg_dropcluster --stop 9.1 main 

相应的数据目录将被删除, service postgresql将不再引用9.1

此时9.2群仍然会使用端口5433,这是不切实际的。

要将其切换到默认端口,请编辑/etc/postgresql/9.2/main/postgresql.conf并将port = 5433更改为port = 5432

然后重新启动PostgreSQL。

最后,为了摆脱postgresql-9.1包,请参阅dpkg -l 'postgresql*9.1*'

psql失败,因为你的postgres没有运行。
首先,你应该明白为什么有2个不同的服务器,然后删除其中一个(通过apt-get ,我认为),如果需要重新配置另一个(如果你键入sudo service portgresql start ,两台服务器将启动,要连接到9.2,你必须使用psql --port=5433 )。
编辑你的问题添加更多的信息(Ubuntu的版本,Postgres的起源等)…