Importer un fichier SQL

Cette page explique comment importer un fichier SQL dans une base de données AlloyDB.

La procédure d'importation implique les tâches suivantes:

  1. Importez le fichier SQL dans un bucket Cloud Storage.

  2. Préparer un hôte client pour effectuer l'opération d'importation

  3. Importez le fichier SQL dans la base de données.

  4. Nettoyez les ressources créées pour effectuer la procédure.

Avant de commencer

  • Vous devez disposer du rôle IAM de base "Propriétaire" (roles/owner) ou "Éditeur" (roles/editor) dans le projet Google Cloud que vous utilisez, ou des rôles IAM prédéfinis suivants :
    • Administrateur AlloyDB (roles/alloydb.admin) ou Lecteur AlloyDB (roles/alloydb.viewer)
    • Administrateur de l'espace de stockage (roles/storage.admin)
    • Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1)

Importer le fichier SQL

Pour importer le fichier SQL, créez un bucket Cloud Storage, puis importez-y le fichier SQL.

  1. Créez un bucket de stockage régional pour le stockage standard dans le projet et la région où se trouve votre base de données AlloyDB. Lorsque vous suivez ces instructions, veillez à allouer suffisamment d'espace de stockage local à la VM Compute Engine pour accueillir le fichier SQL que vous importez.

  2. Importez le fichier SQL dans le bucket de stockage que vous avez créé.

Préparer un hôte client

Pour préparer un hôte client à effectuer l'opération d'importation, vous devez créer une VM Compute Engine pouvant se connecter à l'instance principale AlloyDB où se trouve votre base de données, puis installer l'outil psql et la Google Cloud CLI sur cette VM.

  1. Suivez les instructions de la section Connecter un client psql à une instance pour créer une VM Compute Engine avec la connectivité appropriée et l'outil psql installé. Lorsque vous suivez ces instructions, veillez à allouer suffisamment d'espace de stockage local à la VM Compute Engine pour accueillir le fichier SQL que vous importez.

  2. Installez gcloud CLI pour fournir un accès en ligne de commande au fichier SQL dans le bucket Cloud Storage.

Importer le fichier SQL

Pour importer le fichier SQL, vous devez obtenir l'adresse IP de l'instance principale AlloyDB où se trouve votre base de données, puis utiliser l'outil psql pour importer le fichier dans la base de données.

  1. Obtenez l'adresse IP de l'instance principale AlloyDB où se trouve votre base de données en affichant ses détails.
  2. Connectez-vous en SSH à la VM Compute Engine.

    Console

    1. Dans la console Google Cloud, accédez à la page Instances de VM.

      Accéder à la page Instances de VM

    2. Dans la liste des instances de machine virtuelle, cliquez sur SSH sur la ligne de l'instance que vous avez créée.

      bouton SSH en regard du nom de l'instance.

    gcloud

    Utilisez la commande gcloud compute ssh pour vous connecter à l'instance que vous avez créée.

    gcloud compute ssh --project=PROJECT_ID --zone=ZONE VM_NAME

    Remplacez les éléments suivants :

    • PROJECT_ID: identifiant du projet contenant l'instance.
    • ZONE: nom de la zone dans laquelle se trouve l'instance.
    • VM_NAME : nom de l'instance
  3. Copiez le fichier SQL dans le système de fichiers local de l'hôte client:
    gcloud storage cp gs://BUCKET_NAME/SQL_FILE_NAME .
  4. Importez le fichier SQL:
    psql -h IP_ADDRESS -U postgres DB_NAME < SQL_FILE_NAME
    
    • IP_ADDRESS : adresse IP de l'instance principale.
    • DB_NAME: nom de la base de données dans laquelle importer les données.
    • SQL_FILE_NAME: fichier SQL que vous avez importé.

Effectuer un nettoyage des ressources

Une fois le fichier SQL importé, vous pouvez supprimer le bucket Cloud Storage et la VM Compute Engine que vous avez utilisées lors de la procédure d'importation.