標籤:
命令:su - postgres
CREATE USER foo WITH PASSWORD ‘secret‘;
====================
1、2個配置修改
postgresql.conf:修改
listen_addresses = ‘*‘
pg_hba.conf:增加
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
2、建立使用者
命令:su - postgres
CREATE USER foo WITH PASSWORD ‘secret‘;
(原文如下)
Redhat上新裝PostgreSQL9.1.3, 用psql連不上, 報錯:
psql.bin: FATAL: password authentication failed for user "postgres"明明添加了postgres這個使用者, 口令也簡單的不得了,不可能記錯的, 怎麼就連不上呢? 上網查,有人說修改pg_hba.conf, 把local一行的md5改成trust。一試,果然好使。 後來,客戶機遠程登入,出現同樣問題,於是咱如法炮製,再把md5改成了trust,也能登入了, 只要擷取對方的信任(trust),問題真的就不是問題了,呵。 但這種做法對於伺服器而言,相當於把自家的鎖砸了:設定成trust後,根本就不需要口令。 我再google,中間突然打不開連結,於是只好耐心地等了5分鐘。來火,但是沒辦法。網路封鎖和網路搜尋,一不小心就成了一對冤家。 www.2cto.com 終於,老天有眼,讓我找到了下面一段話: PostgreSQL 資料庫口令與任何作業系統用 戶口令無關。各個資料庫使用者的口令是儲存在 pg_authid 系統資料表裡面。口令可以用 SQL 語言命令 CREATE USER 和 ALTER USER 等管理(比如 CREATE USER foo WITH PASSWORD ‘secret‘; 。預設時,如果沒有明確設定口令,那麼儲存的口令是空並且該使用者的口令認證總會失敗。《PostgreSQL 8.2.3 中文文檔,20.2 認證方法》 原來是這樣啊,pg_authid表裡的postgres使用者的口令還是空的呢!我再改,好了,這回是真好了。
(轉載)postgresql navicat 用戶端串連驗證失敗解決方案:password authentication failed for user