2009-08-17 26 views
44

ローカルサーバ(Ubuntu)にIP 192.168.1.10をインストールしました。今、クライアントマシン(Ubuntu)からpgAdminでIP 192.168.1.11のデータベースにアクセスしようとしています。pgAdminを使用してPostgreSQLをリモートデータベースに接続できません

私は、クライアントが接続できるようにpostgresql.confとpg_hba.confに変更を加えなければならないことを知っています。私を案内してくれませんか?

+0

あなたはエラーが発生しますか?もしそうなら、どんなエラー? – krishna

+0

これは実際にプログラミングに関する質問ではありません。しかし、data/pg_hba.confの "host all all 192.168.1.0/24 md5"という行を追加してください。 – nos

+0

取得しているエラーは何ですか?異なるサーバーからデータベースに接続するために実行するコマンドは何ですか? postgresql.confとpg_hba.confで何を変更しようと考えていますか? – Space

答えて

100

実際には、pgAdmin3経由でPostgreSQLサーバにリモート接続するための3つのステップのプロセスです。

注:私はUbuntu 11.04とPostgreSQL 8.4を使用しています。

  1. デフォルトの設定は、専用のループバックインターフェイスでの接続をリッスンすることができますので、あなたは、PostgreSQLは、リモートの着信TCP接続の待機を確認する必要があります。サーバに到達できるようにするためにリモートであなたは、デフォルトでは/etc/postgresql/8.4/main/postgresql.conf:

    のlisten_addresses =「*」

  2. PostgreSQLは、それが任意のリモートアドレスから受信したすべての接続を拒否し、あなたが持っているファイルに以下の行を追加する必要があります/etc/postgresql/8.4/main/pg_hba.conf:

    ホストすべてすべて0.0.0.0/0 md5のに次の行を追加することにより、これらのルールを緩和することが

    これは、アクセス制御ルールであります有効なパスワード(md5キーワード)を入力できる場合は、誰でも任意のアドレスからログインできます。 0.0.0.0/0ではなく、必要なnetwork/maskを使用できます。

  3. これらの変更を設定ファイルに適用したら、PostgreSQLサーバを再起動する必要があります。これで、ユーザー名とパスワードを使用して、サーバーにリモートでログインすることができます。

+5

ubuntu 'sudo /etc/init.d/postgresql stop'と' sudo /etc/init.d/postgresql start'でPostgreSQLサーバを起動します。私はこれのためにgoogled。サービスを再開するコマンドを知らない人のためにここに追加してください – ganesshkumar

+0

ありがとうございました!私は何時間も探していましたが、この答えはPostgreSQL 9.5の最終的な問題を解決しました。特に第2のステップはそれを行いました。 – Alexander

+1

RedHat '/ var/lib/pgsql/9.4/data/pg_hba.conf' –

8

PostgreSQL 8以上を使用している場合は、の設定を/etc/postgresql/8.4/main/postgresql.confに変更する必要があります。行を追加

試してみてください。

​​

すべてのネットワークインタフェース上の接続を監視するのPostgreSQLを教えてくれます。

明示的に設定されていない場合、この設定のデフォルトはlocalhostです。つまり、同じマシンからの接続のみが受け入れられます。

0

私は私のprostgresql.confファイルを変更する必要はありませんでしたけど、私は、コマンドラインを介して、私はpsqlに基づいて次の操作を実行する必要が接続してなかったとpgAdminでは、AWSでRDSに接続していません。

私はRDSをPublicly Accessibleに設定しました。 host all all 0.0.0.0/0 md5 のpg_hba.confファイル内のディレクティブの先頭に追加し、pgAdminでは、自動的に私を記録し、その後 sudo nano ./data/pg_hba.confその後、 sudo find . -name *.conf :私は私のACLとセキュリティグループはとても広いオープンしてまだ問題がなかったことを確認しました、私は次のようでした。

これはまた、任意のIPアドレスなしでpg_hba.confファイル host all all md5で働いていたし、これはまた、注意点として、私のIPアドレスhost all all <myip>/32 md5

で働いていた、私のRDSは私のデフォルトのVPCにありました。デフォルトのVPCと同じセキュリティグループ、ACL、およびセキュリティグループの設定をデフォルトVPCに持つ同一のRDSインスタンスがあり、動作させることができませんでした。理由は分かりませんが、それは別の日です。

0

のRedHat Linux用

sudo vi /var/lib/pgsql9/data/postgresql.conf 

pgsql9がインストールPostgresのバージョンのフォルダで、他人

のために異なる場合があります のlisten_addresses = '*' からのlisten_addressesを= 'localhost' の を変更し、

sudo /etc/init.d/postgresql stop 
sudo /etc/init.d/postgresql start 
関連する問題