PostgreSQLのエラー「psql: FATAL: Ident authentication failed for user "postgres"」の解消方法〜コンソールでpsql -U postgresが失敗する場合〜

Linuxのコンソール画面等でpsql -U postgresとすると、

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

というエラーが出てしまうことがある。

このエラーは、pg_hba.confを修正すれば回避できる。

-----------------------------------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD

# "local" is for Unix domain socket connections only
local all all ident sameuser
-----------------------------------------------------------------------------------------------------

PostgreSQL 8.xのインストール直後だと上記のようになっているので、「ident sameuser」を「trust」に変更する。(「trust」は無条件でデータベース接続を許可するため、セキュリティを考慮する場合は、「trust」を「password」などにする。)

-----------------------------------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD

# "local" is for Unix domain socket connections only
local all all trust
-----------------------------------------------------------------------------------------------------

PostgreSQLサービスを再起動したら、psql -U postgresが利用できるはず。

※pg_hba.confは、Linuxだと/var/lib/pgsql/data/配下、Windowsだと、C:\Program Files\PostgreSQL\8.x\data配下にある。(「8.x」はPostgreSQLのバージョンで実際には「8.3」などとなる。)

前へ

道後さや温泉ゆららにボディソープとシャンプーが無料で利用できるようになっていた

次へ

今日は休日出勤、そして明日は朝5時出発!