注意: 2027 年 7 月 31 日以降、アプライアンス管理コンソールを使用した PostgreSQL データベースのバックアップのサポートは非推奨になります。この非推奨と代替のバックアップ ソリューションの詳細については、以前のデータベース バックアップから移行するをご覧ください。
PostgreSQL は、オープンソースの優れたオブジェクト リレーショナル データベース システムです。SQL 言語を使用、拡張し、最も複雑なデータ ワークロードを安全に保存、スケーリングする多くの機能を備えています。
Backup and DR で使用される PostgreSQL バックアップ API
ボリューム レベル(Linux 変更ブロックのトラッキングと LVM スナップショット)のバックアップ: Backup and DR は、Linux 変更ブロックのトラッキングと LVM スナップショットを使用してバックアップを実行するときに、PostgreSQL の
pg_start_backup(label)コマンドとpg_stop_backup()コマンドを使用します。フル + 増分(ファイルベースの従来型)バックアップ: Backup and DR は、PostgreSQL
pg_dumpファイルベースのバックアップ コマンドを使用します。pg_dumpコマンドには、データベースの増分変更をキャプチャするオプションがないため、各バックアップは完全なデータベース ダンプ バックアップになります。データベースの復元では、データ領域を物理的に上書きしてデータベースを復元します。
PostgreSQL ログのバックアップ: ログのバックアップ中に、Backup and DR はすべての PostgreSQL WAL(
WriteAheadLog)を物理的にコピーします。ログをパージするために、Backup and DR は OS レベルのコマンドを使用します。
仕組み: Linux CBT を使用した Backup and DR のボリュームベースのバックアップ
ビットマップで追跡されるのは変更されたブロックのみです。コピーオンライトや I/O 負荷の高いオペレーションはありません。
データのバックアップと復元のプロセスは次のとおりです。
Backup and DR エージェントには、データベース データ領域内の変更済みブロックを追跡する CBT があります。
エージェントは、データベース API を呼び出して、データ バックアップのためにデータベースをフリーズまたは一時停止します。
エージェントがデータベース データ領域の LVM スナップショットを作成し、ビットマップを合成します。
エージェントがデータベース API を呼び出してデータベースのフリーズを解除します。
エージェントが変更されたブロックをバックアップ / リカバリ アプライアンスにコピーします。その後、スナップショットが削除され、バックアップがカタログ化されます。
アプライアンスは内部スナップショットを発行し、特定時点の仮想フル バックアップを合成します。
データ復旧の場合、Backup and DR は書き換え可能なステージング ディスクを即座にマウントし、データベースをオンラインにします。
quiesce コマンドまたは unquiesce コマンドは、ボリューム レベルのスナップショット ジョブのプライマリで実行されます。
select pg_start_backup(<label>);
select pg_stop_backup();
quiesce コマンドと unquiesce コマンドは、ボリューム レベルのスナップショット ジョブのスタンバイ ノードで実行されます。
PostgreSQL のバージョンが 10.x 以降の場合:
select pg_wal_replay_pause();
select pg_wal_replay_resume();
PostgreSQL のバージョンが 9.x の場合:
select pg_xlog_replay_pause();
select pg_xlog_replay_resume();
仕組み: ファイルベースのバックアップ
次の手順では、ファイルベースのバックアップを使用してデータのバックアップと復元を行うプロセスについて説明します。
Backup and DR エージェントがデータベース サーバーにデプロイされている。
データベース サーバーにステージング ディスクをマウントします。
ダンプ バックアップ コマンドを使用してフル バックアップを呼び出し、マウントされたディスクにバックアップを書き込みます。
Backup and DR が内部スナップショットを取得します。ログのバックアップが、構成したスケジュールに従い、ファイル システムから直接、同様の方法で行われます。
データ復旧の場合、Backup and DR はステージング ディスクをデータベース サーバーに即座にマウントし、データベース復元オペレーションを開始します。ログは、データベースの復元後の任意の時点まで再生できます。
次のステップ
PostgreSQL 向け Backup and DR に関するその他のドキュメント
- PostgreSQL の Backup and DR
- Backup and DR 用にデータベースを準備する
- PostgreSQL データベース ホストを追加してデータベースを検出する
- ポリシー テンプレートとリソース プロファイルを定義する
- アプリケーションの詳細と設定を行う
- ステージング ディスクの形式とバックアップ方法を確認する
- PostgreSQL データベースとそのログを保護する
- PostgreSQL データベースをマウントする
- PostgreSQL バックアップを復元する
- PostgreSQL の Backup and DR ワークフローを作成する