全部產品
Search
文件中心

ApsaraDB RDS:執行個體層級全量備份pg_basebackup

更新時間:Jun 19, 2024

您可以使用PostgreSQL內建的工具pg_basebackup將整個執行個體的資料進行備份,並匯出到本地儲存。

前提條件

  • RDS PostgreSQL執行個體已放通ECS執行個體或本地主機的IP。詳情請參見設定白名單
  • ECS執行個體或本地主機已安裝和RDS PostgreSQL執行個體相同版本的PostgreSQL。

背景資訊

pg_basebackup可以將整個PostgreSQL執行個體的資料進行備份,在後續業務中可用於時間點恢複。更多詳情請參見pg_basebackup

本文以CentOS 7作業系統和PostgreSQL 12版本為例,為您示範如何備份。

注意事項

建議使用高許可權帳號或具有REPLICATION許可權的帳號進行備份,避免出現許可權不足的問題。

操作步驟

說明 pg_basebackup無法備份單個資料庫或資料庫物件。備份單個資料庫或資料庫物件請參見邏輯備份PostgreSQL資料
  1. 登入ECS執行個體或本地主機,使用如下命令備份目標資料庫。
    pg_basebackup -Ft -Pv -Xs -z -D <backupdir> -Z5 -h '<hostname>' -p <port> -U <username> -W

    參數說明如下。命令說明請參見pg_basebackup

    參數說明
    backupdir匯出的備份檔案路徑。系統會自動建立目錄,但是如果該目錄已經存在且不為空白,則會報錯。
    hostnameRDS PostgreSQL執行個體串連地址。

    如果相同帳號內的ECS執行個體和RDS執行個體處於相同地區,且網路類型相同(都為VPC時則必須處於同一個VPC),建議使用內網串連地址。

    其他情形建議使用外網串連地址。

    說明 通過外網串連地址訪問RDS執行個體,需要執行個體已申請外網串連地址。詳情請參見開通或關閉外網地址
    portRDS PostgreSQL執行個體連接埠。
    usernameRDS PostgreSQL執行個體帳號名稱。

    樣本

    pg_basebackup -Ft -Pv -Xs -z -D /pg12/backup1/ -Z5 -h pgm-bpxxxxx.pg.rds.aliyuncs.com -p 1433 -U test1 -W
  2. 命令列提示Password:時,輸入PostgreSQL執行個體帳號對應的密碼,然後按斷行符號鍵確認。
    pg_basebackup

相關文檔

如果需要使用備份檔案恢複資料,請參見Recovering Using a Continuous Archive Backup