basebackup_to_shellは、shellという名前のカスタムbasebackupターゲットを追加します。
これにより、pg_basebackup --target=shellを実行するか、このモジュールの設定方法に応じてpg_basebackup --target=shell:を実行し、サーバ管理者が選択したサーバコマンドを、バックアッププロセスで生成されたtarアーカイブごとに実行させることができます。
コマンドは、標準入力を介してアーカイブの内容を受け取ります。
DETAIL_STRING
このモジュールは主に、拡張モジュールを使用して新しいバックアップ・ターゲットを作成する方法の例として作成されていますが、シナリオによってはそれ自体が役立つ場合があります。 このモジュールを機能させるには、shared_preload_librariesまたはlocal_preload_librariesを使用してロードする必要があります。
basebackup_to_shell.command (string)
バックアップ処理によって生成された各アーカイブに対してサーバが実行する必要があるコマンドです。
コマンド文字列に%fが含まれている場合は、アーカイブの名前に置き換えられます(例:base.tar)。
コマンド文字列に%dが含まれている場合は、ユーザーが指定したターゲット詳細に置き換えられます。
コマンド文字列に%dが使用されている場合は、ターゲット詳細が必要です。
それ以外の場合は禁止されています。
セキュリティ上の理由から、ターゲット詳細には英数字のみを使用できます。
%%がコマンド文字列に含まれている場合は、単一の%に置き換えられます。
%がコマンド文字列に含まれていて、その後に他の文字または文字列の末尾にある場合は、エラーが発生します。
basebackup_to_shell.required_role (string)
shellバックアップターゲットを使用するために必要なロールです。
これが設定されていない場合、レプリケーションユーザーはshellバックアップターゲットを使用できます。
Robert Haas <rhaas@postgresql.org>