web-dev-qa-db-ja.com

PostgreSQL、デフォルトデータベースのホスト名アドレスは何ですか?

Linux CentOS 7を実行しているラップトップでPostgreSQLデータベースを作成しました( これらの指示に従って )。

ここで、デフォルトデータベースの ホスト名アドレス とは何かを理解したいと思います。 localhostだと思いましたが、違います。

psql -hコマンドで使用する名前またはIPアドレスを知りたい。基本的に、このpsql -h HOSTNAMEコマンドを実行すると、psqlコマンドだけで同じ結果が得られるため、データベースに接続できます。

デフォルトデータベースのホスト名アドレスとは何ですか?

> service postgresql status 

状態:

●postgresql.service-PostgreSQLデータベースサーバーロード済み:ロード済み(/usr/lib/systemd/system/postgresql.service; enabled;ベンダープリセット:無効)アクティブ:2017年3月30日14:40:30からアクティブ(実行中) EDT; 1日前1時間メインPID:2256(postgres

一方、psql -h 127.0.0.1psql -h 127.0.0.1 -U davideの両方がこのメッセージを生成します。

psql:致命的:ユーザー「davide」のID認証に失敗しました `

4
DavideChicco.it

同じマシンから接続している場合は、localhostを使用します

特定のコンピューターは、異なるソケット(アドレス:ポートのペア)でPostgreSQLの複数のインスタンスを実行できます。デフォルトのポートは5432です

特定のPostgreSQLサーバーは、同じインスタンスで複数のデータベースを実行できます。 postgresデータベースは常にそこにあります。 「デフォルトのデータベース」は実際にはありません。

サービスが有効になっていて実行されていますか?設定しましたかlisten_addresses postgresql.confにあり、pg_hba.confに認証を設定しますか?

サービスは実際に実行されていますか?

3
Neil McGuigan

Linuxのデフォルトでは、TCPではなくUNIXドメインソケットを介して接続するため、ホスト名はありません。

明示的なオプションでデフォルトを再現したい場合は、-h /var/run/postgresql(yumからインストールした場合)または-h /tmp(デフォルト設定を使用してソースからインストールした場合)のようになります。

2
jjanes