ubuntuでpsql: FATAL: Peer authentication failed for userの対応にハマった話


はじめに

pg_hba.conf を $PGDATA の下に作成・修正しても、掲題のエラーが解消しなかったときの対応メモ

前提

pg_hba.conf の設定は理解していることを前提とします。

環境

  • ubuntu18.04
  • posgres 10

結論

pg_hba.confの場所が違っていた。

postgresユーザでPeer接続して、pg_hba.confを認識している場所を見る。

postgres=# SHOW hba_file;
              hba_file
-------------------------------------
 /etc/postgresql/10/main/pg_hba.conf
(1 row)

なんと/etc/の下に存在していた。このファイルを修正してpostgresを再起動することで解決。

# "local" is for Unix domain socket connections only
#local   all             all                                     peer
local   all             all                                     md5