Avant d'exporter des données, vous devez :
Accordez au compte de service d'exportation du service de base de données un accès en écriture au bucket de stockage d'objets de destination. Cette liaison de rôle doit être créée dans le même espace de noms que le cluster de bases de données concerné. Consultez Accorder et obtenir l'accès au stockage.
Le système Database Service crée automatiquement ce compte de service lors de la création du cluster de bases de données. Pour trouver l'espace de noms qui contient le compte de service géré par le contrôleur, utilisez les commandes suivantes :
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}'
Une fois que vous avez l'espace de noms, le compte de service que vous recherchez est nommé postgresql-export-DATABASE_CLUSTER_NAME.
Remplacez DATABASE_CLUSTER_NAME par le nom du cluster de base de données vers lequel vous exportez des données.
Vous pouvez exporter un cluster de bases de données vers un fichier de dump de données à l'aide de la console GDC ou de la CLI Distributed Cloud :
Console
- Dans le menu principal, sélectionnez Service de base de données.
- Sélectionnez le cluster de bases de données que vous souhaitez exporter. La page Présentation du cluster de bases de données s'affiche.
- Cliquez sur EXPORTER. Le panneau Exporter des données s'ouvre.
- Dans le panneau Exporter des données, spécifiez l'emplacement de stockage vers lequel exporter les données.
- Cliquez sur EXPORTER. Des messages à l'écran indiquent l'état du processus d'exportation.
gdcloud
- Avant d'utiliser la CLI gdcloud, installez-la et initialisez-la. Ensuite, authentifiez-vous auprès de votre organisation.
Exécutez la commande suivante pour exporter un fichier de base de données vers un fichier de dump :
gdcloud database export sql DATABASE_CLUSTER \ BUCKET_NAME/SAMPLE.dmp --project=PROJECT_NAMERemplacez les éléments suivants :
- DATABASE_CLUSTER par le nom du cluster de bases de données à exporter.
- BUCKET_NAME/SAMPLE.dmp par la destination du fichier de dump exporté.
- PROJECT_NAME par le nom du projet dans lequel se trouve le cluster de base de données.
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
Remplacez les variables suivantes :
EXPORT_NAME: nom de l'opération d'exportation.USER_PROJECT: nom du projet utilisateur dans lequel le cluster de bases de données à exporter est créé.DBCLUSTER_NAME: nom du cluster de bases de données.BUCKET_NAME: nom du bucket de stockage d'objets dans lequel stocker les fichiers exportés.