次のシナリオがあります。
saji@geeklap:~$ psql -U postgres
psql: FATAL: Ident authentication failed for user "postgres"
saji@geeklap:~$ psql -h localhost -U postgres
Password for user postgres:
psql (8.4.14)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.
postgres=#
postgresql
システムにインストールされているサーバーにユーザーとしてログインしようとしていますpostgres
。を指定し-h localhost
た場合にのみログインできます。psql
ドキュメントはそれを言うのに対し:
ホスト名を省略した場合、psqlはUnixドメインソケットを介してローカルホスト上のサーバーに接続するか、TCP / IPを介してUnixドメインソケットを持たないマシン上のlocalhostに接続します。
参照: http : //www.postgresql.org/docs/current/static/app-psql.html#R2-APP-PSQL-CON
ホストを指定せずにログインできないのはなぜpsql
ですか。ドキュメントに記載されているように、何かを行うために変更が必要な構成ファイルがありますか?
.psqlrc
デフォルトを指定するを作成します-または、(UNIXソケット)接続に認証pg_hba.conf
を使用するように編集します。およびのドキュメントを参照してください。md5
local
pg_hba.conf
psql