久々にPostgreSQLを利用したら、案の定ユーザー認証ではまる。
基本的にpostgresユーザでローカルで作業する分には問題発覚しないのであるが、別のユーザーでつなごうとしたら以下のPeer authentication failed for user “postgres”が出た。
このエラーメッセージの意味はunixユーザーと同じアカウントじゃないとだめといわれている。
外部から接続する場合はこの認証方式は邪魔なので通常のパスワード認証に変えておく。
AmazonLinuxの場合なぜか設定ファイルが~postgres/dataにはなく
/var/lib/pgsql9/dataに存在する。
# psql -U postgres template1 psql: FATAL: Peer authentication failed for user "postgres" $ vi pg_hba.conf #peerをコメントアウトしてmd5にしたものを追加 #local all all peer local all all md5 # 再起動! # /etc/init.d/postgresql restart Stopping postgresql service: [ OK ] Starting postgresql service: [ OK ]