0

Postgresql のインストール場所を見つけたいので、postgresql.conf および pg_hba.conf ファイルを変更して Postgresql を再起動する必要があります。

Windows/Unix/Linux に適用できるインストール ディレクトリを特定する方法はありますか? どんな助けや提案も本当に感謝しています。

4

2 に答える 2

1

PostgreSQLに質問する:

SHOW config_file;
SHOW hba_file;

また:

SELECT current_setting('config_file');
SELECT current_setting('hba_file');

もちろん、これにはPostgreSQLが実行され、TCP / IPでリッスンし、デフォルトのポートでリッスンしている必要があります。また、認証できる必要があります。ポート(デフォルトは5432)とクレデンシャルの入力をユーザーに求める必要があります。

次の理由により、実行中のPostgreSQLインスタンスに問い合わせずにPostgreSQLデータディレクトリの場所を特定する一般的な方法はありません。

  • PostgreSQLインスタンスが複数実行されている可能性があります
  • Mac OS X上のPostgreSQLは、Homebrew(Mac OS X)、Postgres.app(Mac OS X)、システムパッケージ管理(Linux)、ポート(BSD)、EnterpriseDBインストーラー、さまざまなサードパーティのロールアップディストリビューション、 .zipバイナリ、またはソースから。
  • PostgreSQLは、launchd(Mac OS X)から、Windowsサービス(Windows)として、systemd / upstart / init(Linux / BSD)から、ユーザーが手動でpg_ctlなどを使用して起動および実行できます。データディレクトリはで指定できます。起動コマンドライン。

したがって、PostgreSQLデータディレクトリの「場所」を把握できるという考え全体は偽物です。

PostgreSQLに依存するソフトウェアを作成している場合は、独自のコピーを.zipバイナリにバンドルし、pg_ctlデフォルト以外のポートで開始して実行することを検討してください。これにより、ユーザーが配置したPostgreSQLのインストールに干渉しなくなります。彼らのシステム自体に。

于 2012-10-15T12:53:52.303 に答える
0

次のようなカスタム環境変数を定義して、次のようPOSTGRES_HOMEに使用できますJAVA_HOME

 POSTGRES_HOME  = /usr/local/pgsql
 pg_hba.conf path =  POSTGRES_HOME/data/pg_hba.conf
于 2012-10-15T09:18:49.433 に答える