由於 AlloyDB Omni 與 PostgreSQL 相容,因此 pgBackRest 手冊中說明的資料還原指令和技術也適用於 AlloyDB Omni。本頁面將示範常見的復原作業,並提供相關指令的範例。
啟用 TDE 的叢集也支援使用 pgBackRest 備份及還原。詳情請參閱「建立啟用 TDE 的叢集」。
如要進一步瞭解如何設定 pgBackRest 以搭配 AlloyDB Omni 使用,請參閱「為 AlloyDB Omni 設定 pgBackRest」。
事前準備
還原 AlloyDB Omni 叢集前,請確認您已備妥下列項目:
執行
sudo dnf install pgbackrest安裝 pgBackRest。為 AlloyDB Omni 執行個體設定及配置 pgBackRest。
目的地檔案系統有足夠的磁碟空間,可儲存還原的 AlloyDB Omni 資料庫叢集。
還原資料庫執行個體所用的 AlloyDB Omni 主要版本,與原始來源資料庫執行個體相同。
如要檢查 PostgreSQL 版本,請執行下列指令:
/usr/lib/postgresql/18/bin/psql -h localhost -U postgres -c "SELECT version();"
如要檢查 pgBackRest 版本,請執行下列指令:
pgbackrest version
如果目標資料庫執行個體的 PostgreSQL 或 pgBackRest 版本不同,或兩者皆不同,則須建立版本相符的新目標資料庫執行個體。如果無法這麼做,則必須使用替代方法,例如 PostgreSQL 隨附的
pg_dump或pg_dumpall公用程式,跨版本複製資料庫。
停止 AlloyDB Omni
如要模擬 AlloyDB Omni 資料庫叢集無法使用的情況,請停止服務。
sudo systemctl stop 18
移除資料目錄
如要清除 AlloyDB Omni 資料庫叢集,請移除資料目錄。
sudo rm -rf DATA_DIR/*
請替換下列變數:
DATA_DIR:儲存資料的主機目錄路徑。
確認備份內容是否顯示
sudo -u postgres pgbackrest \ --config-path=/var/lib/BACKUP_DIR \ --stanza=STANZA_NAME \ info
請替換下列變數:
STANZA_NAME:您建立的節名稱。例如:my-stanza。還原備份
sudo -u postgres pgbackrest \ --stanza=STANZA_NAME \ restore
請替換下列變數:
*STANZA_NAME:您建立的節名稱。例如:my-stanza。
啟動 AlloyDB Omni
啟動 AlloyDB Omni 服務。
sudo systemctl start 18
驗證 AlloyDB Omni 是否已啟動
sudo systemctl status 18
其他選項
pgBackRest restore 指令非常靈活,您可透過傳入不同的指令列選項,控管各種選項和功能。如需執行還原的完整指南,請參閱「還原」。