サーバーエラー: No pg_hba.conf Entry for Host
このエントリでは、PostgreSQL データベースにリモート接続しようとした際に発生するこのエラーの解決方法をご紹介します。
Date Entered: 3/18/2020 Last Updated: 3/18/2020 Author: Garrett Bird
CData が提供する PostgreSQL コネクタを使用している場合、リモートの PostgreSQL データベースに初めて接続する際に、以下のようなエラーが発生することがあります。
Server error: no pg_hba.conf entry for host "10.0.1.128", user "postgres", database "postgres", SSL off Connection was forcibly closed
このエラーは、ローカルの PostgreSQL インスタンスの Server 接続プロパティに「localhost」ではなく実際の IP アドレスを指定した場合にも発生する可能性があります。いずれの場合も、PostgreSQL インスタンス自体にアクセスできるか、管理者に連絡できれば、すぐに解決できます。以下の手順で、お使いのマシンからサーバーへのリモート接続を有効にしてみてください。
- ファイルエクスプローラーで、PostgreSQL インストールディレクトリの「data」フォルダに移動します。Windows システムでは、通常 C:\Program Files\PostgreSQL\10\data のようなパスになります(番号付きのフォルダは PostgreSQL のバージョンによって異なります)。
- このディレクトリ内に「pg_hba.conf」というファイルがあります。このファイルをお好みのテキストエディタで開いてください。
- ファイルを開いたら、ファイルの下部に以下の行を追加します。特に、「IPv4 local connections」グループ内に配置してください(指定する IP アドレスは、接続元のマシンの IP アドレスです)。
host all all 10.0.1.128/32 md5
- 変更を保存してファイルを閉じます。次に、マシン上でサービスウィンドウを開きます。
- 現在実行中のサービス一覧から、PostgreSQL サーバーのサービスを見つけて再起動します。これにより、conf ファイルで行った変更が PostgreSQL サーバーに適用されます。

上記の手順が完了すると、CData が提供するコネクタを使用して、お使いのマシンから PostgreSQL サーバーにリモートでクエリを実行できるようになります。
We appreciate your feedback. If you have any questions, comments, or suggestions about this entry, please contact our support team at support@cdata.co.jp.