Backup Dialog

pgAdmin は pg_dump ユーティリティを使用して、プレーンテキストまたはアーカイブ形式でバックアップを作成する簡単な方法を提供します。次に、クライアントアプリケーション( psql や クエリツール など)を使用してプレーンテキストバックアップファイルを復元するか、Postgres pg_restore ユーティリティを使用してアーカイブされたバックアップを復元します。 pg_dump ユーティリティには、バックアップするすべてのデータベースオブジェクトへの読み取りアクセスが必要です。

単一のテーブル、スキーマ、またはデータベース全体をバックアップできます。 pgAdmin ツリーコントロールでバックアップソースの名前を選択し、右クリックしてコンテキストメニューを開き、 Backup... を選択して Backup ダイアログを開きます。選択したオブジェクトの名前は、ダイアログのタイトルバーに表示されます。

バックアップダイアログの一般タブ

[ General ]タブのフィールドを使用して、バックアップのパラメーターを指定します。

  • Filename フィールドにバックアップファイルの名前を入力します。必要に応じて、右側の ブラウザー アイコン(...)を選択してディレクトリに移動し、アーカイブを含むファイルを選択します。

  • フォーマット フィールドのドロップダウンリストボックスを使用して、アプリケーションに最適なフォーマットを選択します。各フォーマットには長所と短所があります。

    • Custom を選択して、 pg_restore で使用してデータベースのコピーを作成できるカスタムアーカイブファイルを作成します。カスタムアーカイブファイル形式は、 pg_restore で復元する必要があります。この形式では、バックアップファイルから復元するデータベースオブジェクトを選択する機会が提供されます。 カスタム アーカイブ形式は、デフォルトで圧縮されているため、中規模から大規模のデータベースにお勧めします。

    • Tar を選択して、 pg_restore で復元できるtarアーカイブファイルを生成します。tar形式は圧縮をサポートしていません。

    • Plain を選択して、プレーンテキストのスクリプトファイルを作成します。プレーンテキストスクリプトファイルには、 psql コマンドラインで実行してデータベースオブジェクトを再作成し、テーブルデータをロードできるSQLステートメントとコマンドが含まれています。プレーンテキストのバックアップファイルは、 psql プログラムを使用してデータベースオブジェクトを復元する前に、必要に応じてテキストエディターで編集できます。 Plain フォーマットは、通常、小規模なデータベースにお勧めします。BLOBのスクリプトダンプはお勧めできません。スクリプト内のSQLコマンドは、データベースを最後に保存したデータベースの状態に再構築します。プレーンテキストスクリプトを使用して、別のマシンで、または(変更を加えて)他のアーキテクチャでデータベースを再構築できます。

    • Directory を選択して、 pg_restore での使用に適したディレクトリ形式のアーカイブを生成します。このファイル形式は、ダンプされるテーブルとブロブごとに1つのファイルを含むディレクトリと、ダンプされたオブジェクトを pg_restore が読み取ることができる機械可読形式で説明する 目次 ファイルを含むディレクトリを作成します。このフォーマットはデフォルトで圧縮されています。

  • CompressionRatio フィールドを使用して、バックアップの圧縮レベルを選択します。ゼロの値を指定すると、圧縮を使用しないことを意味します。最大圧縮値9を指定します。tarアーカイブは圧縮をサポートしていないことに注意してください。

  • エンコーディング ドロップダウンリストボックスを使用して、アーカイブに使用する文字エンコーディング方法を選択します。

  • ジョブの数 フィールド(該当する場合)を使用して、並列バックアップで同時にダンプされるテーブルの数を指定します。

  • Rolename の横にあるドロップダウンリストボックスを使用して、バックアップを所有するロールを指定します。

[ データオプション ]タブをクリックして続行します。 DataOptions タブのフィールドを使用して、 pg_dump に対応するデータまたはpgAdminオブジェクトに関連するオプションを提供します。

バックアップダイアログのセクションオプション
  • Sections フィールドボックスのスイッチを移動して、バックアップするオブジェクトの一部を選択します。

    • Pre-data の横にあるスイッチを右の位置に移動して、データまたはポストデータ項目リストに含まれないすべてのデータ定義項目を含めます。

    • Data の横にあるスイッチを右の位置に移動して、実際のテーブルデータ、ラージオブジェクトのコンテンツ、およびシーケンス値をバックアップします。

    • Post-data の横にあるスイッチを右の位置に移動して、検証済みのチェック制約以外のインデックス、トリガー、ルール、および制約の定義を含めます。

バックアップダイアログのオブジェクトの種類オプション
  • Type of objects フィールドボックスのスイッチを移動して、バックアップするオブジェクトの種類に関する詳細を指定します。

    • Onlydata の横にあるスイッチを右の位置に移動して、データへのバックアップを制限します。

    • スイッチを スキーマのみ の横に移動して、バックアップをスキーマレベルのデータベースオブジェクトに制限します。

    • Blobs の横にあるスイッチを左の位置に移動して、バックアップから大きなオブジェクトを除外します。

バックアップダイアログのオプションを保存しない
  • Do not save フィールドボックスのスイッチを移動して、バックアップに含まれないオブジェクトを選択します。

    • Owner の横にあるスイッチを右の位置に移動して、オブジェクトの所有権を設定するコマンドを除外します。

    • Privileges の横にあるスイッチを右の位置に移動して、アクセス権限を作成するコマンドを除外します。

    • Tablespaces の横にあるスイッチを右の位置に移動して、テーブルスペースを除外します。

    • ログ記録されていないテーブルデータ の横にあるスイッチを右の位置に移動して、ログ記録されていないテーブルのコンテンツを除外します。

    • Comments の横にあるスイッチを右の位置に移動して、コメントを設定するコマンドを除外します。 Note: このオプションは、11以上のデータベースサーバでのみ表示されます。

    • 出版物 の横にあるスイッチを右の位置に移動して、出版物を除外します。

    • サブスクリプション の横にあるスイッチを右の位置に移動して、サブスクリプションを除外します。

    • セキュリティラベル の横にあるスイッチを右の位置に移動して、セキュリティラベルを除外します。

    • トースト圧迫 の横にあるスイッチを右の位置に移動して、トースト圧迫を除外します。 Note: このオプションは、14以上のデータベースサーバーでのみ表示されます。

    • テーブルアクセス方法 の横にあるスイッチを右の位置に移動して、テーブルアクセス方法を除外します。 Note: このオプションは、15以上のデータベースサーバでのみ表示されます。

バックアップダイアログのクエリオプション

[ クエリオプション ]タブをクリックして続行します。これらの追加フィールドを使用して、バックアップに含めるステートメントのタイプを指定します。

  • UseINSERTコマンド の横にあるスイッチを右の位置に移動して、COPYコマンドを使用するのではなく、INSERTステートメントの形式でデータをダンプします。注:これにより、バックアップからの復元が遅くなる場合があります。

  • MaximumrowsperINSERTcommand フィールドを使用して、INSERTコマンドあたりの最大行数を制御します。 Note: このオプションは、12以上のデータベースサーバでのみ表示されます。

  • OnconflictdoNothingtoINSERTcommand の横にあるスイッチを右の位置に移動して、ONCONFLICTDONOTHINGをINSERTコマンドに追加します。このオプションは、 UseINSERTコマンド 、 UseColumnINSERTS または ** INSERTコマンドあたりの最大行数 も指定されていない限り有効ではありません。 * *Note: * このオプションは、12以上のデータベースサーバでのみ表示されます。

  • IncludeCREATEDATABASEステートメント の横にあるスイッチを右の位置に移動して、バックアップの復元時に新しいデータベースを作成するコマンドをバックアップに含めます。

  • IncludeDROPDATABASEstatement の横にあるスイッチを右の位置に移動して、バックアップ中にオブジェクトを再作成する前に同じ名前の既存のデータベースオブジェクトを削除するコマンドをバックアップに含めます。

  • IncludeIFEXISTS句 の横にあるスイッチを右の位置に移動して、IFEXISTS句を追加して、データベースやその他のオブジェクトを削除します。このオプションは、 IncludeDROPDATABASEステートメント も設定されていない限り有効ではありません。

バックアップダイアログテーブルセクション

[ テーブルオプション ]タブをクリックして続行します。バックアップに含める必要があるテーブルに関連する テーブルオプション タブのフィールドを使用します。

  • UseColumnINSERTS の横にあるスイッチを右の位置に移動して、INSERTステートメントの形式でデータをダンプし、明示的な列名を含めます。注:これにより、バックアップからの復元が遅くなる場合があります。

  • Loadviapartitionroot の横にあるスイッチを右の位置に移動します。 Note: このオプションは、11以上のデータベースサーバでのみ表示されます。

  • Enablerowsecurity の横にあるスイッチを右側に移動して、代わりにrow_securityをonに設定し、ユーザーがアクセスできるテーブルのコンテンツの部分をダンプできるようにします。このオプションは、行セキュリティを持つテーブルの内容をダンプする場合にのみ関連します。

  • WithOIDs の横にあるスイッチを右の位置に移動して、各テーブルのテーブルデータの一部としてオブジェクト識別子を含めます。

  • テーブルデータを除外 フィールドを使用して、テーブルパターンに一致するテーブルのデータをダンプしません。

[ オプション ]タブをクリックして続行します。[ オプション ]タブのフィールドを使用して、他のバックアップオプションを提供します。

バックアップダイアログのオプションを無効にする
  • Disable フィールドボックスのスイッチを移動して、バックアップから除外するステートメントのタイプを指定します。

    • トリガー (データのみのバックアップを作成するときにアクティブ)の横にあるスイッチを右の位置に移動して、データのロード中にターゲットテーブルのトリガーを無効にするコマンドを含めます。

    • $quoting の横にあるスイッチを右の位置に移動して、関数本体内でドルクォートを有効にします。無効にすると、関数本体はSQL標準文字列構文を使用して引用符で囲まれます。

バックアップダイアログのその他のオプション
  • Miscellaneous フィールドボックスのスイッチを移動して、その他のバックアップオプションを指定します。

    • Verbosemessages の横にあるスイッチを左の位置に移動して、 pg_dump に詳細なメッセージを除外するように指示します。

    • Forcedoublequotesonidentifiers の横にあるスイッチを右の位置に移動して、すべての識別子の引用を強制します。

    • UseSETSESSIONAUTHORIZATION の横にあるスイッチを右の位置に移動して、SETSESSIONAUTHORIZATIONコマンドを使用してオブジェクトの所有権を判断するステートメントを含めます(ALTEROWNERコマンドの代わりに)。

    • Excludeschema フィールドを使用して、名前がパターンに一致するスキーマをダンプしないようにします。

    • 余分な浮動小数点数 フィールドを使用して、浮動小数点データをダンプするときに、利用可能な最大精度の代わりに指定された値を使用します。

    • Lockwaittimeout フィールドを使用して、ダンプの先頭に共有テーブルロックを取得するために永久に待機しないようにします。代わりに、指定されたタイムアウト内にテーブルをロックできない場合は失敗します。

pg_dumpコマンドに組み込まれる詳細を指定したら:

  • バックアップ ボタンをクリックして、 バックアップ ダイアログでの選択に基づいてバックアップをビルドするコマンドをビルドして実行します。

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

pgAdminは、バックグラウンドでバックアッププロセスを実行します。 Processes タブで、実行中のステータスとログを含むすべてのバックグラウンドプロセスを表示できます