2013-05-19 117 views
2

我有三個版本的Ubuntu Ubuntu 12.04.2 LTS(精確的穿山甲)上安裝了8.4,9.1和9.2的postgres。 8.4版本是在5433端口5434連接到PostgreSQL給出「無法連接到服務器」的錯誤

運行,9.1端口5432和9.2當我運行postgres status我得到這個

8.4/main (port 5433): down 
9.1/main (port 5432): down 
9.2/main (port 5434): online 

當我嘗試連接到9.2版本使用psql -U postgres template1我得到以下錯誤

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"? 

我能做些什麼來得到這個工作?希望能夠聽到你們的聲音。

+0

題外話。這不是一個編程問題。請參閱:http://dba.stackexchange.com –

+1

那麼,***是***在本地運行的服務器,並接受在Unix域套接字「/var/run/postgresql/.s.PGSQL.5432」上的 連接?如果沒有,請在連接字符串中指定主機名或IP地址。 –

+0

@OldPro,謝謝你的提示。你的線索是我所需要的更少的錯誤片斷。我已經發布了我所做的工作,以便在下面開展工作。 –

回答

1

@Old Pro。謝謝你的線索。該解決方案如果真的很簡單。

經過探身,我終於找到了工作。由於我有三個數據庫版本坐在同一個盒子上,但是從三個不同的端口運行,所以我試圖連接到每個數據庫時需要做的是明確指定要連接到哪個數據庫的端口。 PostgreSQL默認端口是5432,所以當連接到我的版本9.1時,我不必指定端口,但是當連接到版本8.1和9.2時,我必須指定端口號。

我這樣做是爲了讓它工作。

VERSION 8.1上運行PORT 5433

psql -p 5433 -U postgres template1 

VERSION 9.1上運行PORT 5432

psql -p 5432 -U postgres template1 

OR

psql -U postgres template1 

9.2版本端口上運行5434

psql -p 5434 -U postgres template1 
相關問題