「postgresqlがすべてのデータベースを保持するディレクトリ 「(および構成)は「データディレクトリ」と呼ばれ、PostgreSQLが(少し紛らわしいことに)「データベースクラスタ」と呼ぶものに対応します。これは分散コンピューティングとは関係ありません。これは、PostgreSQLによって管理されるデータベースと関連オブジェクトのグループを意味します。サーバー。
データディレクトリの場所は、ディストリビューションによって異なります。ソースからインストールする場合、デフォルトは/usr/local/pgsql/data
です。 :
ファイルシステムの用語では、データベースクラスターはすべてのデータが保存される単一のディレクトリになります。これをデータディレクトリまたはデータ領域と呼びます。 / usr / local / pgsql/dataや/var/ lib / pgsql / dataなどの場所が一般的ですが、デフォルトはありません。(ref)
さらに、実行中のPostgreSQLサーバーのインスタンスが1つのクラスターに関連付けられています。そのデータディレクトリの場所は、-D
でサーバーデーモン(「postmaster」または「postgres」)に渡すことができます。 コマンドラインオプション、またはPGDATA
による 環境変数(通常は実行中のユーザーのスコープ内、通常はpostgres
)。通常、実行中のサーバーは次のように表示されます。
[[email protected] ~]# ps auxw | grep postgres | grep -- -D
postgres 1535 0.0 0.1 39768 1584 ? S May17 0:23 /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
それほど頻繁ではありませんが、異なる「クラスター」(データディレクトリ)にサービスを提供する同じPostgreSQLサーバーの2つのインスタンス(同じバイナリ、異なるプロセス)を実行することが可能であることに注意してください。もちろん、各インスタンスは独自のTCP/IPポートでリッスンします。