Vous pouvez utiliser DTS pour migrer les données d'une instance PolarDB-X 2,0 vers un cluster PolarDB for MySQL.
Prérequis
Une instance source PolarDB-X 2,0 a été créée.
Un cluster de destination PolarDB for MySQL est disponible. Pour plus d'informations, consultez les rubriques Achat personnalisé et Acheter un cluster par abonnement.
Le cluster de destination PolarDB for MySQL doit disposer d'un espace de stockage supérieur à l'espace utilisé par l'instance source PolarDB-X 2.0.
Limites
DTS migre les clés étrangères lors de la migration du schéma.
Lors des migrations de données complètes et incrémentielles, DTS désactive temporairement les vérifications de contraintes et les cascades de clés étrangères au niveau de la session. Les mises à jour ou suppressions en cascade sur la base de données source pendant l'exécution de la tâche peuvent entraîner une incohérence des données.
|
Type |
Description |
|
Limites de la base de données source |
|
|
Autres limites |
|
|
Autres précautions |
|
Facturation
|
Type de migration |
Frais de configuration de l'instance |
Frais de trafic Internet |
|
Migration du schéma et migration complète des données |
Gratuit. |
Lorsque le paramètre Access Method de la base de données de destination est défini sur Public IP Address, des frais de trafic Internet vous sont facturés. Pour plus d'informations, consultez la rubrique Présentation de la facturation. |
|
Migration incrémentielle des données |
Facturé. Pour plus d'informations, consultez la rubrique Présentation de la facturation. |
Types de migration
-
Migration du schéma
DTS migre les définitions de schéma des objets de migration de la base de données source vers la base de données de destination.
-
Migration complète
DTS migre toutes les données historiques des objets de migration spécifiés de la base de données source vers la base de données de destination.
-
Migration incrémentielle
Une fois la migration complète terminée, DTS migre les mises à jour incrémentielles des données de la base de données source vers la base de données de destination. La migration incrémentielle permet de migrer les données en toute transparence sans interrompre vos applications auto-gérées.
Opérations SQL lors de la migration incrémentielle
|
Type d'opération |
Instruction SQL |
|
DML |
INSERT, UPDATE, DELETE |
|
DDL |
|
Autorisations des comptes de base de données
|
Base de données |
Migration du schéma |
Migration complète |
Migration incrémentielle |
|
Instance source PolarDB-X 2,0 |
Autorisation SELECT |
Autorisation SELECT |
Autorisations REPLICATION SLAVE et REPLICATION CLIENT, ainsi que l'autorisation SELECT sur les objets à migrer. Remarque Pour savoir comment accorder des autorisations, consultez la rubrique Problèmes d'autorisations de compte lors de la synchronisation des données. |
|
Cluster de destination PolarDB for MySQL |
Autorisations de lecture et d'écriture |
||
Pour créer un compte de base de données et accorder des autorisations :
Pour un cluster PolarDB for MySQL, consultez la rubrique Créer et gérer un compte de base de données.
Procédure
-
Accédez à la page de liste des tâches de migration pour la région de destination en utilisant l'une des méthodes suivantes.
Depuis la console DTS
Connectez-vous à la console Data Transmission Service (DTS).
Dans le volet de navigation de gauche, cliquez sur Data Migration.
Dans le coin supérieur gauche de la page, sélectionnez la région où se trouve l'instance de migration.
Depuis la console DMS
RemarqueLes opérations réelles peuvent varier selon le mode et la disposition de la console DMS. Pour plus d'informations, consultez les rubriques Console en mode simple et Personnaliser la disposition et le style de la console DMS.
Connectez-vous à la console Data Management (DMS).
Dans la barre de menu supérieure, choisissez .
À droite de Data Migration Tasks, sélectionnez la région où se trouve l'instance de migration.
Cliquez sur Create Task pour accéder à la page de configuration de la tâche.
-
Facultatif : Dans le coin supérieur droit de la page, cliquez sur New Configuration Page.
RemarqueSi vous êtes déjà sur la nouvelle page de configuration (le bouton dans le coin supérieur droit est Back to Previous Version), vous pouvez ignorer cette étape.
Les paramètres des pages de configuration ancienne et nouvelle diffèrent. Nous vous recommandons d'utiliser la nouvelle page de configuration.
-
Configurez les bases de données source et de destination.
AvertissementAprès avoir sélectionné les instances source et de destination, nous vous recommandons de lire attentivement les limites affichées en haut de la page. À défaut, la tâche pourrait échouer ou entraîner une incohérence des données.
Section
Parameter
Description
N/A
Task Name
DTS génère automatiquement un nom de tâche. Nous vous recommandons de spécifier un nom descriptif pour faciliter l'identification. Le nom n'a pas besoin d'être unique.
Source Database
Select Existing Connection
Pour utiliser une instance de base de données qui a été ajoutée au système (créée ou enregistrée), sélectionnez l'instance de base de données souhaitée dans la liste déroulante. Les informations de base de données ci-dessous seront configurées automatiquement.
RemarqueDans la console DMS, ce paramètre est nommé Select a DMS database instance..
Si vous n'avez pas enregistré l'instance de base de données auprès du système, ou si vous n'avez pas besoin d'utiliser une instance enregistrée, configurez manuellement les informations de base de données ci-dessous.
Database Type
Sélectionnez PolarDB-X 2.0.
Access Method
Sélectionnez Alibaba Cloud Instance.
Instance Region
Sélectionnez la région où se trouve l'instance PolarDB-X 2,0 source.
Replicate Data Across Alibaba Cloud Accounts
Cet exemple migre des données au sein du même compte Alibaba Cloud. Sélectionnez No.
Instance ID
Sélectionnez l'ID de l'instance PolarDB-X 2,0 source.
Database Account
Saisissez le compte de base de données pour l'instance PolarDB-X 2,0 source. Pour plus d'informations sur les autorisations requises, consultez la section Autorisations requises pour les comptes de base de données.
Database Password
Saisissez le mot de passe du compte de base de données.
Destination Database
Select Existing Connection
Pour utiliser une instance de base de données qui a été ajoutée au système (créée ou enregistrée), sélectionnez l'instance de base de données souhaitée dans la liste déroulante. Les informations de base de données ci-dessous seront configurées automatiquement.
RemarqueDans la console DMS, ce paramètre est nommé Select a DMS database instance..
Si vous n'avez pas enregistré l'instance de base de données auprès du système, ou si vous n'avez pas besoin d'utiliser une instance enregistrée, configurez manuellement les informations de base de données ci-dessous.
Database Type
Sélectionnez PolarDB for MySQL.
Access Method
Sélectionnez Alibaba Cloud Instance.
Instance Region
Sélectionnez la région où se trouve le cluster PolarDB for MySQL de destination.
PolarDB Cluster ID
Sélectionnez l'ID du cluster PolarDB for MySQL de destination.
Database Account
Saisissez le compte de base de données pour le cluster PolarDB for MySQL de destination. Pour plus d'informations sur les autorisations requises, consultez la section Autorisations requises pour les comptes de base de données.
Database Password
Saisissez le mot de passe du compte de base de données.
Encryption
Sélectionnez un type de connexion selon vos besoins. Pour plus d'informations sur la fonctionnalité de chiffrement SSL, consultez la rubrique Activer le chiffrement SSL.
-
Une fois la configuration terminée, cliquez sur Test Connectivity and Proceed en bas de la page.
Si la base de données source ou de destination est une instance de base de données Alibaba Cloud, telle qu'une instance RDS for MySQL ou ApsaraDB for MongoDB, DTS ajoute automatiquement les plages CIDR des serveurs DTS à la liste blanche d'adresses IP de l'instance. Si la base de données source ou de destination est une base de données auto-gérée hébergée sur une instance ECS, DTS ajoute automatiquement les plages CIDR des serveurs DTS aux règles du groupe de sécurité de l'instance ECS. Vous devez également vous assurer que la base de données est accessible depuis l'instance ECS. Si la base de données auto-gérée est hébergée sur plusieurs instances ECS, vous devez ajouter manuellement les plages CIDR des serveurs DTS aux règles du groupe de sécurité de chaque instance ECS. Si la base de données source ou de destination est une base de données auto-gérée déployée dans un centre de données sur site ou fournie par un fournisseur de services cloud tiers, vous devez ajouter manuellement les plages CIDR des serveurs DTS à la liste blanche d'adresses IP de la base de données pour autoriser l'accès depuis les serveurs DTS. Pour plus d'informations sur les adresses IP des serveurs DTS, consultez la rubrique Plages CIDR des serveurs DTS.
AvertissementL'ajout des plages d'adresses IP publiques des serveurs DTS, qu'il soit automatique ou manuel, peut introduire des risques de sécurité. En utilisant ce produit, vous reconnaissez et acceptez ces risques potentiels. Vous devez mettre en œuvre des mesures de sécurité de base, telles que l'utilisation de mots de passe robustes, la limitation des ports ouverts pour chaque plage CIDR, l'utilisation de l'authentification pour les appels API internes, ainsi que la vérification et la restriction régulières des plages CIDR inutiles. Vous pouvez également vous connecter via un réseau interne, tel qu'une ligne louée, VPN Gateway ou Smart Access Gateway.
-
Configurez les objets de la tâche.
-
Sur la page Configure Objects, configurez les objets que vous souhaitez migrer.
Parameter
Description
Migration Types
Si vous devez uniquement effectuer une migration complète, sélectionnez à la fois Schema Migration et Full Data Migration.
Pour réaliser une migration sans interruption de service, sélectionnez Schema Migration, Full Data Migration et Incremental Data Migration.
RemarqueSi vous ne sélectionnez pas Schema Migration, assurez-vous qu'une base de données et des tables destinées à recevoir les données existent dans la base de données de destination. Vous pouvez également utiliser la fonctionnalité de mappage des noms d'objets dans la zone Selected Objects selon vos besoins.
Si vous ne sélectionnez pas Incremental Data Migration, n'écrivez aucune nouvelle donnée dans l'instance source pendant la migration afin de garantir la cohérence des données.
Processing Mode for Existing Destination Tables
Precheck and Report Errors : vérifie si des tables portant le même nom existent dans la base de données de destination. Si aucune table homonyme n'existe, la prévalidation est réussie. En revanche, si des tables portant le même nom existent, une erreur est signalée lors de la prévalidation et la tâche de migration des données ne démarre pas.
RemarqueSi une table de la base de données de destination porte le même nom mais ne peut pas être facilement supprimée ou renommée, vous pouvez modifier le nom de la table dans la base de données de destination. Pour plus d'informations, consultez la rubrique Object name mapping.
Ignore Errors and Proceed : ignore la vérification des tables portant le même nom.
AvertissementLa sélection de l'option Ignore Errors and Proceed peut entraîner une incohérence des données et présenter des risques pour votre activité. Par exemple :
Si les schémas de table sont identiques et qu'un enregistrement de la base de données de destination possède la même valeur de clé primaire qu'un enregistrement de la base de données source :
Lors de la migration complète, DTS conserve l'enregistrement présent dans la base de données de destination. L'enregistrement provenant de la base de données source n'est pas migré.
Lors de la migration incrémentielle, DTS ne conserve pas l'enregistrement présent dans la base de données de destination. L'enregistrement provenant de la base de données source écrase celui de la base de données de destination.
Si les schémas de table sont différents, seule une partie des colonnes de données peut être migrée, ou la migration peut échouer. Procédez avec prudence.
Source Objects
Sélectionnez un ou plusieurs objets dans la section Source Objects. Cliquez sur l'icône
et ajoutez les objets à la section Selected Objects. RemarqueLa granularité de sélection des objets de migration correspond au schéma, à la table et à la colonne. Si vous ne sélectionnez que des tables ou des colonnes comme objets de migration, les autres objets tels que les vues, les déclencheurs et les procédures stockées ne seront pas migrés vers la base de données de destination.
Selected Objects
-
Pour modifier le nom d'un seul objet de migration dans l'instance cible, cliquez avec le bouton droit sur l'objet dans la zone Selected Objects. Pour plus d'informations, consultez la rubrique Map individual schema, table, and column names.
-
Pour modifier les noms de plusieurs objets de migration dans l'instance cible, cliquez sur Selected Objects dans le coin supérieur droit de la zone Batch Edit. Pour plus d'informations, consultez la rubrique Map multiple schema, table, and column names.
Remarque-
Si vous utilisez la fonctionnalité de mappage des noms d'objets, il est possible que d'autres objets dépendant de l'objet renommé ne puissent pas être migrés.
-
Pour filtrer les données à l'aide d'une clause WHERE, cliquez avec le bouton droit sur la table à migrer dans la zone Selected Objects et spécifiez la condition de filtre dans la boîte de dialogue qui s'affiche. Pour plus d'informations, consultez la rubrique Set filter conditions.
-
Pour sélectionner les opérations SQL à migrer au niveau de la base de données ou de la table, cliquez avec le bouton droit sur l'objet dans la zone Selected Objects et sélectionnez les opérations SQL souhaitées dans la boîte de dialogue qui s'affiche. Pour obtenir la liste des opérations prises en charge, consultez la rubrique SQL operations that can be migrated during incremental data migration.
-
Cliquez sur Next: Advanced Settings pour configurer les paramètres avancés.
Parameter
Description
Dedicated Cluster for Task Scheduling
Par défaut, DTS planifie les tâches sur un cluster partagé. Aucune sélection n'est requise. Si vous souhaitez une stabilité accrue pour vos tâches, vous pouvez acheter un dedicated cluster pour exécuter les tâches de migration DTS.
Select the engine type of the destination database
Sélectionnez le type de moteur de stockage pour la base de données de destination.
-
InnoDB : moteur de stockage par défaut.
-
X-Engine : moteur de stockage destiné aux charges de travail OLTP (Online Transaction Processing).
Retry Time for Failed Connections
Une fois la tâche de migration démarrée, si la connexion à la base de données source ou de destination échoue, DTS signale une erreur et tente immédiatement de rétablir la connexion. La durée de nouvelle tentative par défaut est de 720 minutes. Vous pouvez personnaliser cette durée entre 10 et 1 440 minutes. Nous vous recommandons de définir une durée supérieure à 30 minutes. Si DTS parvient à se reconnecter aux bases de données source et de destination dans le délai imparti, la tâche de migration reprend automatiquement. Dans le cas contraire, la tâche échoue.
RemarquePour plusieurs instances DTS partageant la même source ou la même destination, le temps de nouvelle tentative réseau est déterminé par le paramètre de la dernière tâche créée.
Étant donné que la tâche est facturée pendant la période de nouvelle tentative de connexion, nous vous conseillons de personnaliser la durée de nouvelle tentative en fonction de vos besoins métier, ou de libérer l'instance DTS dès que possible après la libération des instances de base de données source et de destination.
Retry Time for Other Issues
Une fois la tâche de migration démarrée, si un problème autre qu'un problème de connectivité survient dans la base de données source ou de destination (par exemple, une exception lors de l'exécution d'une instruction DDL ou DML), DTS signale une erreur et tente immédiatement de relancer l'opération. La durée de nouvelle tentative par défaut est de 10 minutes. Vous pouvez personnaliser cette durée entre 1 et 1 440 minutes. Nous vous recommandons de définir une durée supérieure à 10 minutes. Si les opérations concernées aboutissent dans le délai de nouvelle tentative spécifié, la tâche de migration reprend automatiquement. Dans le cas contraire, la tâche échoue.
ImportantLa valeur du paramètre Retry Time for Other Issues doit être inférieure à celle du paramètre Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Pendant la migration complète, DTS consomme des ressources de lecture et d'écriture sur les bases de données source et de destination, ce qui peut augmenter la charge de la base de données. Si nécessaire, vous pouvez activer la limitation du débit pour la tâche de migration complète. Vous pouvez définir les paramètres Queries per second (QPS) to the source database, RPS of Full Data Migration et Data migration speed for full migration (MB/s) afin de réduire la charge sur la base de données de destination.
RemarqueCet élément de configuration est disponible uniquement si vous sélectionnez l'option Full Data Migration pour le paramètre Migration Types.
Vous pouvez également ajuster la vitesse de migration complète une fois l'instance de migration en cours d'exécution.
Enable Throttling for Incremental Data Migration
Si nécessaire, vous pouvez également choisir de définir des limites de vitesse pour la tâche de migration incrémentielle. Vous pouvez définir les paramètres RPS of Incremental Data Migration et Data migration speed for incremental migration (MB/s) afin de réduire la charge sur la base de données de destination.
RemarqueCet élément de configuration est disponible uniquement si vous sélectionnez l'option Incremental Data Migration pour le paramètre Migration Types.
Vous pouvez également ajuster la vitesse de migration incrémentielle une fois l'instance de migration en cours d'exécution.
Environment Tag
Facultatif. Sélectionnez un tag d'environnement pour identifier l'instance.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Choisissez si les informations SQL de pulsation doivent être écrites dans la base de données source lorsque l'instance DTS est en cours d'exécution.
-
Yes : les informations SQL de pulsation ne sont pas écrites dans la base de données source. Cela peut entraîner un retard signalé par l'instance DTS.
-
No : écrit les informations SQL de pulsation dans la base de données source. Cela peut interférer avec des fonctionnalités telles que la sauvegarde physique et le clonage de la base de données source.
Configure ETL
En fonction de vos besoins métier, choisissez de configurer ou non la fonctionnalité ETL pour traiter les données.
Yes : configure la fonctionnalité ETL. Vous devez également saisir des instructions de traitement des données dans la zone de texte.
No : ne configure pas la fonctionnalité ETL.
Monitoring and Alerting
Choisissez de définir ou non des alertes et de recevoir des notifications d'alerte en fonction de vos besoins métier.
No : ne définit pas d'alerte.
Yes : configurez les alertes en définissant un seuil d'alerte et des notifications d'alerte. En cas d'échec de la migration ou si la latence dépasse le seuil, le système envoie une notification d'alerte.
-
-
Cliquez sur Next: Data Validation pour configurer une tâche de validation des données.
Pour plus d'informations sur la fonctionnalité de validation des données, consultez la rubrique Configurer la validation des données.
-
-
Enregistrez la tâche et exécutez une prévalidation.
Pour afficher les paramètres de configuration de cette instance lors de l'appel de l'opération API, placez le pointeur sur le bouton Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters dans la bulle qui s'affiche.
Si vous n'avez pas besoin d'afficher les paramètres de l'API ou si vous avez terminé leur consultation, cliquez sur Next: Save Task Settings and Precheck en bas de la page.
RemarqueAvant le démarrage de la tâche de migration, DTS effectue une prévalidation. La tâche ne démarre qu'après réussite de cette prévalidation.
Si la prévalidation échoue, cliquez sur View Details à côté de l'élément ayant échoué, corrigez le problème selon les instructions, puis relancez la prévalidation.
-
Si un avertissement est signalé lors de la prévalidation :
Pour les éléments de vérification qui ne peuvent pas être ignorés, cliquez sur View Details à côté de l'élément ayant échoué, corrigez le problème selon les instructions, puis relancez la prévalidation.
Pour les éléments de vérification pouvant être ignorés, vous pouvez cliquer sur Confirm Alert Details, Ignore, OK et Precheck Again afin d'ignorer l'élément d'avertissement et de relancer la prévalidation. Si vous choisissez d'ignorer un avertissement, cela peut entraîner des problèmes tels qu'une incohérence des données et présenter des risques pour votre activité.
-
Achetez l'instance.
Lorsque le Success Rate atteint 100 %, cliquez sur Next: Purchase Instance.
-
Sur la page Purchase, sélectionnez la spécification de lien pour l'instance de migration des données. Pour plus d'informations, consultez le tableau suivant.
Category
Parameter
Description
New Instance Class
Resource Group Settings
Sélectionnez le groupe de ressources auquel appartient l'instance. La valeur par défaut est « default resource group ». Pour plus d'informations, consultez la rubrique Qu'est-ce que la gestion des ressources ?
Instance Class
DTS propose des spécifications de migration offrant différents niveaux de performances. La spécification de lien influence la vitesse de migration. Vous pouvez sélectionner une spécification adaptée à votre scénario métier. Pour plus d'informations, consultez la rubrique Spécifications des liens de migration des données.
Une fois la configuration terminée, lisez et acceptez les Data Transmission Service (Pay-as-you-go) Service Terms.
-
Cliquez sur Buy and Start. Dans la boîte de dialogue OK qui s'affiche, cliquez sur OK.
Vous pouvez consulter la progression de la tâche de migration sur la page de liste Data Migration Tasks.
RemarqueSi la tâche de migration n'inclut pas de migration incrémentielle, elle s'arrête automatiquement une fois la migration complète terminée. Une fois la tâche arrêtée, son Status passe à Completed.
Si la tâche de migration inclut une migration incrémentielle, elle ne s'arrête pas automatiquement. La tâche de migration incrémentielle continue de s'exécuter. Pendant l'exécution de la tâche de migration incrémentielle, le Status de la tâche est Running.