Subscription Dialog

サブスクリプション ダイアログを使用して、サブスクリプションを作成します。サブスクリプションは、別のデータベースへの接続と、サブスクライブするパブリケーション(1つ以上)のセットを定義します。

サブスクリプション ダイアログは、次のダイアログタブを介してサブスクリプションの開発を整理します: General 、 Connection および With 。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。

サブスクリプションダイアログの一般タブ

[ General ]タブのフィールドを使用して、サブスクリプションを識別します。

  • Name フィールドを使用して、サブスクリプションの説明的な名前を追加します。名前は pgAdmin ツリーコントロールに表示されます。

  • 所有者 フィールドは、現在接続しているユーザーとしてユーザーの名前を自動的に取得します。所有者は、altersubscriptionを使用してサブスクリプションを作成した後に変更できます。サブスクリプションの所有者にはスーパーユーザー権限があることに注意してください。

[ 接続 ]タブをクリックして続行します。

サブスクリプションダイアログ接続タブ

Connection タブを使用して、パブリッシャーへの接続文字列を定義します。

  • ホスト名/アドレス フィールドを使用して、パブリケーションの有効なホスト名またはIPアドレスを入力します。

  • Port フィールドを使用して、パブリケーションが存在するPostgresServerに接続するためのポート番号を提供します。

  • Username フィールドを使用して、パブリケーションに接続するユーザーの名前を入力します。

  • Password を使用して、ユーザーのパスワードを入力します。

  • データベース フィールドを使用して、パブリケーションが存在するデータベースに接続します。

  • Connectiontimeout フィールドを使用して、接続の最大待機時間を秒単位で指定します。ゼロまたは指定されていない場合は、無限に待機することを意味します。2秒未満のタイムアウトを使用することはお勧めしません。

  • Passfile フィールドを使用して、パスワードファイル(.pgpass)の場所を指定します。.pgpassファイルを使用すると、ユーザーは接続時にパスワードを入力せずにログインできます。詳細については、 Section 33.15 of the Postgres documentation を参照してください。

  • Publication フィールドを使用して、サブスクライブするパブリッシャーのパブリケーション名を指定します。最後に更新ボタンをクリックして既存の出版物の名前をロードし、リストから選択します。フィールドに既知の出版物の名前を書くこともできます。

[ SSL ]タブをクリックして続行します。

サブスクリプションダイアログSSLタブ

[ SSL ]タブのフィールドを使用して、SSLを構成します。

  • SSL フィールドのドロップダウンリストボックスを使用して、サーバーが使用するSSL接続のタイプを選択します。SSL暗号化の使用の詳細については、 Section 33.18 of the Postgres documentation を参照してください。

pgAdminがサーバーモード(デフォルトモード)でインストールされている場合、プラットフォーム固有のファイルマネージャーダイアログを使用して、SSL暗号化をサポートするファイルをサーバーにアップロードできます。[ファイルマネージャー]ダイアログにアクセスするには、次の各フィールドの右側にあるアイコンをクリックします。

  • クライアント証明書 フィールドを使用して、クライアントSSL証明書を含むファイルを指定します。このファイルは、pgAdminがデスクトップモードでインストールされている場合はデフォルトの ~/.postgresql/postgresql/postgresql.crt 、pgAdminがWebモードでインストールされている場合は <STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.crt を置き換えます。SSL接続が確立されていない場合、このパラメーターは無視されます。

  • クライアント証明書キー フィールドを使用して、クライアント証明書に使用される秘密鍵を含むファイルを指定します。このファイルは、pgAdminがデスクトップモードでインストールされている場合、デフォルトの ~/.postgresql/postgresql/postgresql.key 、およびpgAdminがWebモードでインストールされている場合 <STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.key を置き換えます。SSL接続が確立されていない場合、このパラメーターは無視されます。

  • ルート証明書 フィールドを使用して、SSL認証局を含むファイルを指定します。このファイルは、デフォルトの ~/.postgresql/root.crt を置き換えます。SSL接続が確立されていない場合、このパラメーターは無視されます。

  • 証明書失効リスト フィールドを使用して、SSL証明書失効リストを含むファイルを指定します。このリストは、 ~/.postgresql/root.crl にあるデフォルトのリストを置き換えます。SSL接続が確立されていない場合、このパラメーターは無視されます。

  • SSL圧縮? が True に設定されている場合、SSL接続で送信されるデータは圧縮されます。デフォルト値は False です(圧縮は無効です)。SSL接続が確立されていない場合、このパラメーターは無視されます。

警告

サーバーモードでは、証明書、プライベートキー、および失効リストは、pgAdminサーバープロセスが実行されるユーザーアカウントが所有するサーバー上のユーザーごとのファイル記憶領域に保存されます。これは、サーバーの管理者がこれらのファイルにアクセスできることを意味します。この機能の使用を選択する前に、適切な注意を払う必要があります。

[ とともに ]タブをクリックして続行します。

タブ付きのサブスクリプションダイアログ

With タブを使用して、サブスクリプションのいくつかのパラメーターを定義します。

  • データをコピーしますか? スイッチは、レプリケーションの開始後にサブスクライブされているパブリケーション内の既存のデータをコピーするかどうかを指定します。デフォルトでは Yes に設定されています。

  • Createslot? スイッチは、コマンドがパブリッシャーにレプリケーションスロットを作成するかどうかを指定します。デフォルトでは Yes に設定されています。注:パブリッシャーとサブスクライバーが両方とも同じPostgreSQLサーバー内にある場合、デフォルトで いいえ に設定されます。

  • Enabled? スイッチは、サブスクリプションをアクティブにレプリケートするか、またはセットアップだけでまだ開始しないかを指定します。デフォルトでは Yes に設定されています。

  • Connect? は、CREATESUBSCRIPTIONがパブリッシャーに接続するかどうかを指定します。デフォルトでは、 はい に設定されています。これを No に設定すると、enabled、create_slot、およびcopy_dataのデフォルト値が No に変更されます。

  • SlotName フィールドを使用して、使用するレプリケーションスロットの名前を指定します。デフォルトでは、スロット名にサブスクリプションの名前を使用します。

  • Synchronouscommit フィールドを使用して、synchronous_commit設定をオーバーライドします。デフォルトでは、 オフ に設定されています。論理レプリケーションにはオフを使用しても安全です。同期が見つからないためにサブスクライバーがトランザクションを失った場合、データはパブリッシャーから再度送信されます。

SQL タブをクリックして続行します。

Subscription ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。レビューには SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。

Example

以下は、 サブスクリプション ダイアログでのユーザー選択によって生成されるsqlコマンドの例です。

サブスクリプションダイアログのSQLタブ

この例では、 postgres が所有する sub1 という名前のサブスクリプションを作成します。パブリケーション pub1 からデータを複製します。

  • Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。

  • Save ボタンをクリックして作業を保存します。

  • Close ボタンをクリックして、作業を保存せずに終了します。

  • リセット ボタンをクリックして、すべてのデフォルト設定を復元します。