匯出資料前,請務必完成下列事項:
授予 Database Service 匯出服務帳戶目的地物件儲存空間 bucket 的寫入權限。這個角色繫結必須在主體資料庫叢集的相同命名空間中建立。請參閱「授予及取得儲存空間存取權」。
建立資料庫叢集時,資料庫服務系統會自動建立這個服務帳戶。如要找出包含控制器維護服務帳戶的命名空間,請使用下列指令:
kubectl get dbclusters.postgresql <var>DATABASE_CLUSTER_NAME</var> -n <var>PROJECT_NAMESPACE</var> -o jsonpath='{.status.serviceAccounts.export}'
kubectl get dbclusters.postgresql <var>DATABASE_CLUSTER_NAME</var> -n <var>PROJECT_NAMESPACE</var> -o jsonpath='{.status.serviceAccounts.import}'
取得命名空間後,您要尋找的服務帳戶名稱為 postgresql-export-DATABASE_CLUSTER_NAME。
將 DATABASE_CLUSTER_NAME 替換為要匯出資料的資料庫叢集名稱。
您可以使用 GDC 控制台或 Distributed Cloud CLI,將資料庫叢集匯出至資料 dump 檔案:
控制台
- 從主選單選擇「資料庫服務」。
- 選取要匯出的資料庫叢集。系統會將您帶往該叢集的「資料庫叢集總覽」頁面。
- 按一下「匯出」。「匯出資料」面板隨即開啟。
- 在「匯出資料」面板中,指定要匯出的儲存位置。
- 點選「匯出」。螢幕上的訊息會顯示匯出程序的狀態。
gdcloud CLI
API
apiVersion: postgresql.dbadmin.gdc.goog/v1
kind: Export
metadata:
name: EXPORT_NAME
namespace: USER_PROJECT
spec:
dbclusterRef: DBCLUSTER_NAME
exportLocation:
s3Options:
bucket: BUCKET_NAME
key: dbs-export
type: S3
請替換下列變數:
EXPORT_NAME:匯出作業的名稱。USER_PROJECT:使用者專案的名稱,用於建立要匯出的資料庫叢集。DBCLUSTER_NAME:資料庫叢集名稱。BUCKET_NAME:用於儲存匯出檔案的物件儲存空間 bucket 名稱。