匯出資料前,請務必完成下列事項:
授予資料庫服務匯出服務帳戶目的地物件儲存庫 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,將資料庫叢集匯出至資料轉儲檔案:
控制台
- 從主選單中選擇「Database Service」。
- 選取要匯出的資料庫叢集。系統會將您導向該叢集的「Database cluster overview」(資料庫叢集總覽) 頁面。
- 按一下「 匯出」。「Export data」(匯出資料) 面板隨即開啟。
- 在「Export data」(匯出資料) 面板中,指定要匯出的儲存空間位置。
- 點選「匯出」。畫面上的訊息會指出匯出程序的狀態。
gdcloud
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 名稱。