Backing up and restoring PGAA tables on WarehousePG#
PGAAテーブルは、WarehousePGクラスターではなく、オブジェクトストレージにデータを保存します。
whpg-backup パッケージが提供する
gpbackup utility
は、PGAAと通常のヒープテーブルの両方を含む混合データベースをサポートします。
PGAAテーブルの場合、
gpbackupはメタデータテーブルマッピング、格納場所、パスバインディングのみをキャプチャし、オブジェクトストレージの基になるデータはキャプチャしません。このメタデータはgprestoreによって自動的に復元されるため、手動で再構成せずに、復元後にすぐにPGAAテーブルを照会できます。
オブジェクトストレージの基になるデータの保護は、オブジェクトストレージプロバイダーの責任です。
前提条件#
whpg-backup
バージョン1.33以降がWarehousePGクラスターにインストールされている。
バックアップ#
コーディネーターでgpbackupを実行します。
gpbackup --dbname mydb --backup-dir /path/to/backup-dir
オプションの完全なリストについては、 gpbackup リファレンスページを参照してください。
出力からのバックアップタイムスタンプをメモします。復元手順に必要になります。例
[INFO]:-Backup Timestamp = 20260417100433
復元#
--create-db を使用してgprestoreにターゲットデータベースを作成し、
--redirect-db
を使用してバックアップされたデータベース以外のデータベースにリストアします。
gprestoreは、pgaa およびpgfs 拡張機能を自動的に作成します。
既にPGAAテーブルがある既存のデータベースに復元する場合、メタデータが既に存在する場合テーブルはスキップされるため、不足しているテーブルのみが復元されます。
gprestoreを実行します。
gprestore --backup-dir /path/to/backup-dir --timestamp <backup-timestamp> \
--redirect-db mydb_restored --create-db
オプションの完全なリストについては、 gprestore リファレンスページを参照してください。
gprestore出力の
Tables restoredをチェックして、リストアが成功したことを確認します。ストレージ場所が復元され、PGAAテーブルがオブジェクトストレージに対してすぐに照会可能であることを確認します。
SELECT * FROM pgfs.list_storage_locations();
SELECT count(*) FROM my_table;