Promouvoir une tâche de migration

Pour les migrations continues, vous pouvez lancer le processus de promotion lorsque vous êtes prêt à basculer vos applications vers les bases de données de destination. La promotion du job de migration déconnecte l'instance de destination de la source et la transforme en instance de base de données principale autonome et indépendante. Vous pouvez ainsi reprendre les sauvegardes automatisées, configurer la récupération à un moment précis (PITR) et créer des instances répliquées avec accès en lecture.

Vous pouvez promouvoir un job de migration ou promouvoir des bases de données sélectionnées à partir d'un job de migration.

  1. Arrêtez toutes les opérations d'écriture, les scripts en cours d'exécution et les connexions client à la base de données source. Le temps d'arrêt commence ici.
  2. Attendez que la métrique de délai de réplication soit égale ou proche de zéro. Cela signifie que le job de migration a traité toutes les modifications en attente.

    Vous pouvez promouvoir une migration même si le délai de réplication n'est pas nul. Cela peut réduire le temps d'arrêt de la base de données, mais peut affecter la précision des données dans la destination.

  3. Effectuez l'action de promotion :

    Console

    1. Dans la console Google Cloud , accédez à la page Jobs de migration.

      Accéder à la page "Jobs de migration"

    2. Dans l'onglet Jobs, cliquez sur le nom à afficher du job de migration que vous souhaitez promouvoir.

      La page d'informations sur le job de migration s'ouvre.

    3. Effectuez l'une des actions de promotion suivantes :
      • Si vous souhaitez promouvoir toutes les bases de données incluses dans la migration, cliquez sur Promouvoir dans la barre d'outils du job de migration.

        La boîte de dialogue de promotion du job de migration s'affiche.

      • Si vous ne souhaitez promouvoir que certaines bases de données, sélectionnez-les à l'aide des cases à cocher situées à côté de leur nom, puis cliquez sur Promouvoir dans l'onglet Bases de données.

        La boîte de dialogue s'affiche avec le nombre de bases de données que vous souhaitez promouvoir.

    4. Dans la boîte de dialogue, vérifiez qu'aucune erreur ne s'affiche, puis cliquez sur Promouvoir.

    gcloud

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • MIGRATION_JOB_ID par l'identifiant de votre job de migration.

      Si vous ne connaissez pas l'identifiant, vous pouvez utiliser la commande gcloud database-migration migration-jobs list pour lister tous les jobs de migration d'une région donnée et afficher leurs identifiants.

    • REGION par l'identifiant de la région où votre profil de connexion est enregistré.

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud database-migration migration-jobs \
    promote MIGRATION_JOB_ID \
      --region=REGION

    Windows (PowerShell)

    gcloud database-migration migration-jobs `
    promote MIGRATION_JOB_ID `
      --region=REGION

    Windows (cmd.exe)

    gcloud database-migration migration-jobs ^
    promote MIGRATION_JOB_ID ^
      --region=REGION

    Résultat

    L'action est effectuée de manière asynchrone. Par conséquent, cette commande renvoie une entité d'opération qui représente une opération de longue durée :

    done: false
    metadata:
      '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
      apiVersion: v1
      createTime: '2024-02-20T12:20:24.493106418Z'
      requestedCancellation: false
      target: MIGRATION_JOB_ID
      verb: start
    name: OPERATION_ID
    

    Pour vérifier si l'opération a réussi, vous pouvez interroger l'objet d'opération renvoyé ou vérifier l'état du job de migration :

  4. L'instance de destination ou les bases de données que vous avez sélectionnées sont promues. L'instance de destination est déconnectée de la source, devient une instance principale autonome indépendante et est prête à recevoir l'intégralité du trafic de l'application. L'état du job de migration passe à Completed.
  5. (Facultatif) Pour les sources qui utilisent l'extension pg_cron : l'extension pg_cron (ou tous les paramètres cron associés à l'extension) n'est pas migrée par Database Migration Service, mais elle est compatible avec les destinations Cloud SQL pour PostgreSQL. Si vous utilisez l'extension pg_cron dans vos bases de données sources, vous pouvez la réinstaller sur votre instance de destination.
  6. Vous pouvez maintenant connecter votre application à l'instance Cloud SQL et supprimer le job de migration.