2014-01-31 157 views
1

我已經在Ubuntu Server 13.10上安裝了PostgreSQL 9.1和pgadmin3。Postgres密碼驗證問題

我配置postgresql.conf中具有:listen_addresses = '*'

也我配置ph_hba.conf通過改變對等連接到md5

另外,我通過復位postgres的的密碼:sudo password postgres

然後重新啓動該服務與sudo /etc/init.d/postgresql restart

之後,我試圖連接到默認的PostgreSQL模板數據庫:

sudo -u postgres psql template1 

但登錄失敗與此錯誤消息:

psql: FATAL: password authentication failed for user "postgres" 

然後我試圖從pgAdmin的,這給了我同樣的錯誤登錄。

我在這裏讀,這可能是密碼到期日期錯誤 PostgreSQL user can not connect to server after changing password

但我不解決這個問題怎麼我不能用psql登錄。現在有人如何解決這個問題?

編輯

ph_hba文件:

local all    postgres        md5 
local all    all          md5 
local all    all          trust 

host all    all    127.0.0.1/32   md5 
hostssl all    all    192.168.0.0/16   trust 
host all    all    192.168.0.0/16   trust 

host all    all    ::1/128     md5 
+0

你可以嘗試:sudo -u postgres psql -U postgres -W template1 – Houari

+0

給我同樣的錯誤信息 – Shadin

+0

你已經改變了系統用戶'postgres'的密碼,但是你還沒有改變了DB用戶'postgres'的密碼,這對於'md5'驗證是非常重要的。而且在這種情況下,您不需要在系統用戶'postgres'下啓動'psql'。如果你仍然需要幫助,請在這裏發佈你的'pg_hba.conf'! –

回答

2
在你的pg_hba.conf

,修改

local all    postgres        md5 

local all    postgres        trust 

,那麼你就能夠無密碼登錄

+0

工作正常!非常感謝 – Shadin

+5

如果你這樣做,我希望你相信每個能夠訪問運行PostgreSQL實例的服務器的人,因爲你只是給了他們對PostgreSQL服務器的完全訪問權限。我強烈建議至少使用'peer'認證。 –