本頁說明如何使用 pg_dump
工具,將 AlloyDB 資料庫匯出為自訂格式的封存 DMP 檔案,之後您可以使用 pg_restore
工具匯入該檔案。
匯出程序包含下列工作:
建立 Cloud Storage bucket,用來儲存 DMP 檔案。
準備用戶端主機,執行匯出作業。
將資料庫匯出至 DMP 檔案。
事前準備
- 您必須在使用的 Google Cloud 專案 Google Cloud 中,具備擁有者 (
roles/owner
) 或編輯者 (roles/editor
) 基本 IAM 角色,或是具備下列預先定義的 IAM 角色:- AlloyDB 管理員 (
roles/alloydb.admin
) 或 AlloyDB 檢視者 (roles/alloydb.viewer
) - 儲存空間管理員 (
roles/storage.admin
) - Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1
)
- AlloyDB 管理員 (
建立 Cloud Storage 值區
在 AlloyDB 資料庫所在的專案和區域,建立 Standard Storage Regional Storage bucket。
準備用戶端主機
如要準備用戶端主機來執行匯出作業,請建立可連線至 AlloyDB 主要執行個體的 Compute Engine VM (資料庫所在位置),並在該 VM 上安裝 pg_dump
工具和 Google Cloud CLI。
請按照「將 psql 用戶端連線至執行個體」一文中的操作說明,建立具備適當連線能力並安裝
pg_dump
工具的 Compute Engine VM。按照這些操作說明進行時,請務必為 Compute Engine VM 分配足夠的本機儲存空間,以容納您建立的 DMP 檔案。安裝 gcloud CLI,以便透過指令列存取權,在 Cloud Storage bucket 中建立 DMP 檔案。
匯出資料庫
如要將資料庫匯出為 DMP 檔案,請取得資料庫所在 AlloyDB 主要執行個體的 IP 位址,然後使用 pg_dump
工具。
- 查看詳細資料,取得資料庫所在 AlloyDB 主要執行個體的 IP 位址。
- 透過 SSH 連線至 Compute Engine VM。
控制台
- 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
- 在虛擬機器執行個體清單中,找到您建立的執行個體,然後在該列中按一下「SSH」SSH。
gcloud
使用
gcloud compute ssh
指令連線至您建立的執行個體。gcloud compute ssh --project=PROJECT_ID --zone=ZONE VM_NAME
更改下列內容:
PROJECT_ID
:包含執行個體的專案 ID。ZONE
:執行個體所在的可用區名稱。VM_NAME
:執行個體的名稱。
- 將資料庫匯出至 DMP 檔案:
pg_dump -h IP_ADDRESS -U postgres -F custom \ DB_NAME > DMP_FILE_NAME
系統會提示您輸入
postgres
使用者的密碼。IP_ADDRESS
:主要執行個體的 IP 位址。-F custom
:將 DMP 檔案格式設為自訂格式封存檔,之後您可以使用pg_restore
工具匯入該檔案。DB_NAME
:要匯出的資料庫名稱。DMP_FILE_NAME
:提供要在用戶端主機的本機檔案系統中建立的 DMP 檔案名稱。
上方顯示簡單的
pg_dump
指令。如要瞭解這項指令支援的各種選項,請參閱 PostgreSQL 說明文件。 - 將 DMP 檔案複製到先前建立的 Cloud Storage bucket:
gcloud storage cp DMP_FILE_NAME gs://BUCKET_NAME
清除所用資源
成功匯出 DMP 檔案後,您可以刪除在匯出程序中使用的 Compute Engine VM。
後續步驟
- 瞭解如何匯出 CSV 檔案。
- 瞭解如何匯出 SQL 傾印檔案。