Pour les migrations continues, vous pouvez lancer le processus de promotion lorsqu'il est temps de déplacer les lectures et les écritures vers les bases de données de destination. La promotion signifie que Database Migration Service se déconnecte de votre base de données source, arrête de répliquer les événements de modification de données vers la base de données de destination et nettoie toutes les données de migration temporaires.
- Facultatif : vérifiez l'exhaustivité des données de migration.
- 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.
- Observez la métrique de délai de réplication et attendez qu'elle diminue de manière significative, idéalement de l'ordre de quelques minutes ou secondes.
- Effectuez l'action de promotion sur le job de migration.
Console
Vous pouvez promouvoir un job de migration depuis Database Migration Service ou depuis la page de l'instance de destination.
Dans Database Migration Service :
- Dans la console Google Cloud , accédez à la page Jobs de migration.
- 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.
- Cliquez sur Promouvoir.
- Dans la boîte de dialogue, cliquez sur Promouvoir.
Depuis l'instance de destination :
- Dans la console Google Cloud , accédez à la page Instances Cloud SQL.
- Cliquez sur le nom à afficher de l'instance de destination de votre migration.
La page des détails de l'instance s'affiche.
- Dans la section Migration, cliquez sur Promouvoir.
- 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 listpour 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é.
Facultatif : Database Migration Service migre par défaut toutes les bases de données de votre source. Si vous ne souhaitez migrer que des bases de données spécifiques, utilisez l'option
--databases-filteret spécifiez leurs identifiants sous la forme d'une liste d'éléments séparés par une virgule.Par exemple :
--databases-filter=my-business-database,my-other-databaseVous pourrez modifier ultérieurement les jobs de migration que vous avez créés avec
--database-filter flagà l'aide de la commandegcloud database-migration migration-jobs update.
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. Cette commande renvoie donc une entité Operation qui représente une opération de longue durée :
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 :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
- Utilisez la commande
gcloud database-migration migration-jobs describepour afficher l'état du job de migration. - Utilisez
gcloud database-migration operations describeavec OPERATION_ID pour afficher l'état de l'opération elle-même.
- L'instance de destination est promue, et vos bases de données migrées sont désormais accessibles pour toutes les opérations de lecture et d'écriture.
L'état du job de migration passe à
Completed. - L'application peut désormais être connectée à l'instance Cloud SQL, et le job de migration peut être supprimé en toute sécurité.