[option...]説明pg_basebackupは、稼動中のPostgreSQLデータベースクラスタのベースバックアップを取るために使用されます。データベースへの他のクライアントに影響することなく、バックアップが取られます。このバックアップはポイントインタイムリカバリ(項24.3参照)とログシッピングやストリーミングレプリケーションスタンバイサーバ用の開始点(項25.2参照)としても使用することができます。pg_basebackupは、システムは自動的にバックアップモードにし、自動的にバックアップモードから戻ることを確実に行い、データベースクラスタファイルのバイナリコピーを作成します。バックアップは常にデータベースクラスタ全体のバックアップを取ります。個々のバックアップや個々のデータベースオブジェクトをバックアップすることはできません。個々のデータベースバックアップに関してはpg_dumpなどのツールを使用しなければなりません。バックアップは通常のPostgreSQL接続を経由して、レプリケーションプロトコルを用いて、作成されます。この接続はスーパーユーザまたはREPLICATION権限(項20.2参照)を持つユーザが確立しなければなりません。レプリケーション用の接続にはpg_hba.confにおける明示的な権限が許されていなければなりません。サーバでmax_wal_sendersを、バックアップ用に少なくとも1つのセッションを残すように十分高く設定する必要があります。同時にpg_basebackupを複数実行することができます。性能という観点からは、1つのバックアップのみを取り結果をコピーする方が優れています。pg_basebackupは、マスタからだけではなくスタンバイからもベースバックアップを作成することができます。authenticationを設定してください)。マスタでfull_page_writesを有効にする必要があります。スタンバイからのオンラインバックアップではいくつかの制限があることに注意してください。バックアップ履歴ファイルはバックアップされるデータベースクラスタ内に作成されません。バックアップの最後で、バックアップに必要なすべてのWALファイルが保管されること保証はありません。-xオプションを使用してバックアップに含めなければなりません。オンラインバックアップ中にスタンバイがマスタに昇格した場合、バックアップは失敗します。バックアップに必要なすべてのWALレコードは、必要なだけの完全ページ書き出しを含んでいなければなりません。これは、マスタでfull_page_writesを有効にし、archive_commandとしてWALファイルから完全ページ書き出しを取り除くpg_compresslogのようなツールを使用しないことが要求されます。オプション以下のコマンドラインオプションは出力の場所と書式を制御します。directory--pgdata=directory出力を書き出すディレクトリです。pg_basebackupは必要ならば、このディレクトリとその親ディレクトリすべてを作成します。ディレクトリはすでに存在してもかまいませんが、存在しかつ空でない場合はエラーになります。バックアップがtarモードであり、かつ、指定したディレクトリが-(ダッシュ)の場合、tarファイルはstdoutに書き出されます。このオプションは必須です。format--format=format出力書式を選択します。formatには以下のいずれかを取ることができます。pplain普通のファイルとして、現在のデータディレクトリとテーブル空間と同じレイアウトで、出力を書き出します。クラスタがテーブル空間を追加で持たない場合、データベース全体が指定したディレクトリに格納されます。クラスタが追加のテーブル空間を持つ場合は、主データディレクトリは指定したディレクトリ内に格納されますが、他のテーブル空間はすべて、サーバ上の同じ絶対パスに格納されます。これがデフォルトの書式です。ttar指定したディレクトリ内にtarファイルとして出力を書き出します。主データディレクトリはbase.tarという名前のファイルに書き出され、他のテーブル空間はすべてテーブル空間のOIDに因んだ名前のファイルに書き出されます。対象ディレクトリとして-(ダッシュ)という値が指定された場合、tarの内容は標準出力に書き出されます。これは例えばgzipへのパイプ処理に適しています。これはクラスタが追加テーブル空間を持たない場合のみ行うことができます。-R--write-recovery-confスタンバイサーバの設定を容易にするために、出力ディレクトリ(tar形式の場合はベースアーカイブファイルの中)に最低限のrecovery.confを書き出します。-x--xlogこのオプションの使用は、fetch方式の-Xの使用と同一です。method--xlog-method=method必要なトランザクションログファイル(WALファイル)をバックアップに含めます。これはバックアップ中に生成されたトランザクションログをすべて含めます。このオプションが指定された場合、ログアーカイブを考慮することなく展開したディレクトリ内でそのままpostmasterを起動することができます。これは完全なスタンドアローンバックアップを作成します。以下のトランザクションログを収集するための方法がサポートされます。ffetchトランザクションログファイルはバックアップの最後に収集されます。したがって、wal_keep_segmentsパラメータを、バックアップの最後までログが削除されない程度に大きくさせる必要があります。ログの転送時点でそのログがローテートされていた場合、バックアップは失敗し、使用することができません。sstreamバックアップを作成する時にトランザクションログをストリームします。これは第二のサーバ接続を開き、バックアップを実行している間、並行してトランザクションログのストリーミングを始めます。したがって、これはmax_wal_sendersで設定されるスロットを最大2つ使用します。クライアントが受け取ったトランザクションログに追従している限り、このモードを使用すれば、マスタ上に余分に保管されるトランザクションログは必要ありません。-z--gziptarファイル出力のデフォルトの圧縮レベルによるgzip圧縮を有効にします。tarファイルを生成する場合のみ圧縮を利用することができます。level--compress=leveltarファイル出力のgzip圧縮を有効にします。圧縮レベル(1から9まで。9が最高の圧縮レベル)を指定します。tarファイルを生成する場合のみ圧縮を利用することができます。以下のコマンドラインオプションはバックアップの生成とこのプログラムの実行を制御します。fast|spread--checkpoint=fast|spreadチェックポイントをfastまたはspread(デフォルト)に設定します。label--label=labelバックアップのラベルを設定します。backup"というデフォルト値が使用されます。-P--progress進行状況報告を有効にします。これを有効にすると、バックアップ中におおよその進行状況が報告されます。データベースはバックアップ中に変更があるかもしれませんので、これはおおよそでしかなく100%正確に終わらないかもしれません。実際、WALログがバックアップに含まれる場合、データ総量は前もって予測することはできません。WALなしの総推定量を過ぎた後増加します。これが有効な場合、バックアップはまずデータベース全体容量を計算し、その後実際の内容に戻り、送信します。バックアップに要する時間はかなり長くなるかもしれません。具体的にはデータが送られるようになるまでの時間がより長くなります。-v--verbose冗長モードを有効にします。開始時および終了段階でいくつか追加の段階が出力されます。進行状況報告も有効な場合、現在処理中のファイル名も正しく出力されます。以下のオプションはデータベース接続パラメータを制御します。connstr--dbname=connstrサーバとの接続のために使用するパラメータを、接続文字列として指定します。詳細については項31.1.1を参照してください。--dbnameという名前のオプションは他のクライアントアプリケーションとの整合性のために付けられました。pg_basebackupはクラスタ内の何らかの特定のデータベースに接続しませんので、接続文字列内のデータベース名は無視されます。host--host=hostサーバが稼働しているマシンのホスト名を指定します。この値がスラッシュから始まる場合、Unixドメインソケット用のディレクトリとして使用されます。デフォルトは、設定されていればPGHOST環境変数から取得されます。設定されていなければ、Unixドメインソケット接続と仮定されます。port--port=portサーバが接続を監視するTCPポートもしくはローカルUnixドメインソケットファイルの拡張子を指定します。デフォルトは、設定されている場合、PGPORT環境変数の値となります。設定されていなければ、コンパイル時のデフォルト値となります。interval--status-interval=intervalサーバに返送する状態パケットの間隔を秒単位で指定します。これによりより簡単にサーバから進行状況を監視することができます。ゼロという値は定期的な状態更新を完全に無効にします。時間切れによる切断を防止するために、サーバにより要求された場合に更新は送信されます。デフォルト値は10秒です。username--username=username接続ユーザ名です。-w--no-passwordパスワードの入力を促しません。サーバがパスワード認証を必要とし、かつ、.pgpassファイルなどの他の方法が利用できない場合、接続試行は失敗します。バッチジョブやパスワードを入力するユーザが存在しない場合にこのオプションは有用かもしれません。-W--passwordデータベースに接続する前に、pg_basebackupは強制的にパスワード入力を促します。サーバがパスワード認証を要求する場合pg_basebackupは自動的にパスワード入力を促しますので、これが重要になることはありません。pg_basebackupは、サーバにパスワードが必要かどうかを判断するための接続試行を無駄に行います。した余計な接続試行を防ぐために-Wの入力が有意となる場合もあります。以下のその他のオプションも使用することができます。-V--versionpg_basebackupのバージョンを表示し終了します。-?--helppg_basebackupコマンドライン引数の使用方法を表示し、終了します。他のほとんどのPostgreSQLユーティリティと同様このユーティリティはlibpqでサポートされる環境変数(項31.14参照)を使用します。注意このバックアップには、設定ファイルとサードパーティによりディレクトリに格納された追加ファイルを含む、データディレクトリとテーブル空間内のすべてのファイルが含まれます。データディレクトリ内には通常のファイルとディレクトリのみが許され、シンボリックリンクや特殊デバイスファイルは許されません。PostgreSQLがテーブル空間を管理する方式のため、すべての追加テーブル空間のパスはバックアップをリストアした時に常に同一でなければなりません。主データディレクトリは他の場所に設置することができます。pg_basebackupは同じまたは9.1以降のより古いメジャーバージョンのサーバで動作します。WALストリーミングモード(-Xストリーム)はバージョン9.3のサーバでのみ動作します。例mydbserverで稼動するサーバのベースバックアップを作成し、ローカルディレクトリに保管します。/usr/local/pgsql/data各テーブル空間につき圧縮したtarファイルを1つ作成するようにローカルサーバをバックアップし、backupディレクトリに保管します。同時に実行時に進行状況を表示します。-P単一のテーブル空間を持つローカルデータベースのバックアップを作成し、それをbzip2で圧縮します。backup.tar.bz2(データベース内に複数のテーブル空間が存在する場合このコマンドは失敗します。