Managing Postgres servers#

監視対象データベースサーバーの起動と停止#

PEMでは、PEMクライアントを使用して管理対象サーバーインスタンスを起動およびシャットダウンできます。 PEMがサービスを管理できるようにサーバーを構成するには、[ Server Registration ]ダイアログボックスに値を入力します。ダイアログボックスを使用して、データベースサーバーをPEMエージェントに登録します。これは、データベースサーバーと同じホストにインストールされるローカルエージェントです。次のこともできます。

  • [ Properties ダイアログボックスで Store on PEM Server ]オプションを指定します。

  • [ Advanced ]タブの Service ID フィールドにサービススクリプトの名前を指定します。

    • EDB Postgres Advanced Serverの場合、サービス名はedb-as-<x> またはppas-<x> .

    • PostgreSQLの場合、サービス名はpostgresql-<x> です。 。

<x> は、サーバーバージョン番号を示します。

サーバーに接続した後、ツリーでサーバー名前を選択し、 Tools > Queue Server Startup または Tools > Queue Server Shutdown を選択することにより、サーバーをスタートまたは停止できます。

pg_hba.confファイルの変更#

pg_hba.conf ファイルのエントリは、ネットワークの認証と承認を制御します。 PEMサーバーホスト上のpg_hba.conf ファイルは、PEMサーバーとPEM-HTTPD、PEMエージェント、および監視対象サーバー間の接続を許可する必要があります。

PEMサーバーのインストールプロセスでは、監視対象へのPEMのホストのIPアドレスと接続情報の入力を求められます。この情報は、PEMバッキングデータベースのpg_hba.conf ファイルの先頭に追加されます。

PEM entries in the pg_hba.conf file

PEM entries in the pg_hba.conf file#

pg_hba.conf ファイルを手動で変更して、PEMサーバーと他のコンポーネント間の接続を許可する必要がある場合があります。たとえば、PEM-HTTPDインストールがPEMサーバーと同じホストにない場合、PEMサーバーホスト上のpg_hba.conf ファイルを変更して、PEM-HTTPDがサーバーに接続できるようにする必要があります。

デフォルトでは、pg_hba.conf ファイルはPostgresインストールの下のdataディレクトリにあります。たとえば、 EDB Postgres Advanced Server 10ホストでは、pg_hba.conf のデフォルトの場所は次のとおりです。

/var/lib/edb/as10/data/pg_hba.conf

pg_hba.conf ファイルは、選択したエディターで変更できます。ファイルを変更した後、サーバーをリロードして変更を有効にします。

次の例は、 postgresという名前のユーザーからpg_hba.conf が存在するホスト上のpostgres データベースへのmd5パスワード認証接続を許可するpg_hba.conf エントリーを示しています。接続は、192.168.10.102のIPアドレスから来ています。

#  TYPE     DATABASE        USER        CIDR-ADDRESS         METHOD

#  IPv4 local connections:

 host     postgres       postgres    192.168.10.102/32       md5

ネットワークホストのアドレスまたはネットワークアドレスレンジを指定できます。たとえば、アドレス192.168.10.23、192.168.10.76、および192.168.10.184とサーバーからの接続を許可したい場合は、そのネットワーク内のすべてのホストからの接続を許可するように192.168.10.0/24 のCIDR-ADDRESSを入力します。

#  TYPE     DATABASE        USER        CIDR-ADDRESS       METHOD

#  IPv4 local connections:

  host      postgres         all       192.168.10.0/24       md5

pg_hba.conf ファイルエントリーのフォーマットの詳細については、 PostgreSQL core documentation を参照してください。

PEMを使用してPostgresサーバーに接続する前に、両方のサーバーのpg_hba.conf ファイルで接続が許可されていることを保証必要があります。データベースサーバーへの接続時にエラーを受け取った場合は、 pg_hba.conf ファイルを変更し、接続を許可するエントリーを追加します。

データベースとオブジェクトの作成と保守#

Postgresサーバーの各インスタンスは、1つ以上のデータベースを管理します。各ユーザーは、データベースに含まれる情報にアクセスする前に、データベースに接続するための認証情報を提供する必要があります。 PEMクライアントを使用すると、データベースと、テーブル、インデックス、ストアドプロシージャなどのデータベースを構成するオブジェクトを作成および管理できます。

PEMでデータベースを作成するには、管理対象サーバーの Databases ノードを右クリックし、 Create > Database を選択します。データベースを定義したら、新しいデータベースにオブジェクトを作成できます。

たとえば、テーブルを作成するには、 Tables ノードを右クリックし、 Create > Table を選択します。 [ New Table ]ダイアログボックスでテーブルの属性を指定します。

PEMは、次のような他のデータベースオブジェクトを作成および管理するための同様のダイアログボックスを提供します。

  • テーブル

  • インデックス

  • ストアドプロシージャ

  • ファンクション

  • トリガー

  • ビュー

  • コンストレイン

各オブジェクトタイプはツリーにリストされます。オブジェクトタイプに対応するノードを右クリックして[ Create ]メニューにアクセスし、オブジェクトを作成します。選択したオブジェクトの管理タスクを実行するには、名前付けノードのコンテキストメニューから Properties を選択します。

テンプレートLinuxサービススクリプト#

データベースサーバーのサービススクリプトを使用すると、PEMサーバーはデータベースサーバーを起動、停止、または再起動できます。これは、構成管理、証明書管理、およびその他の管理タスクを実行するときに必要になる場合があります。サービススクリプトはプラットフォーム固有です。

PEMサーバーが存在するPostgresサーバーには、サービススクリプトが含まれている必要があります。 EDBによって生成されたWindowsのPostgresインストーラーは、サービススクリプトを作成します。ネイティブパッケージのような別のソースからのPostgresサーバーを使用している場合、サービススクリプトを提供する必要があります。

注釈

Rocky LinuxまたはRHEL 8.xでは、サービススクリプトは`/usr/lib/systemd/system` にあります。

Postgresサービスのカスタマイズについては、 PostgreSQL documentation を参照してください。