Vous pouvez utiliser Data Transmission Service (DTS) pour migrer les données de PolarDB-X 2,0 vers AnalyticDB for MySQL 3,0, ce qui vous permet de mettre rapidement en place des systèmes internes dédiés à la business intelligence (BI), aux requêtes interactives et au reporting en temps réel.
Prérequis
Vous avez créé une instance source PolarDB-X 2,0.
Vous disposez d'un cluster cible AnalyticDB for MySQL 3,0. Pour plus d'informations, consultez la rubrique Créer un cluster.
Le cluster cible AnalyticDB for MySQL 3,0 doit disposer d'un espace de stockage supérieur à celui utilisé par l'instance source PolarDB-X 2,0.
Limites
Lors de la migration du schéma, DTS ne migre pas les clés étrangères de la base de données source vers la base de données de destination.
Pendant la migration complète des données et la migration incrémentielle, DTS désactive temporairement les vérifications de contraintes et les opérations en cascade des clés étrangères au niveau de la session. Si des opérations de mise à jour ou de suppression en cascade se produisent dans la base de données source pendant l'exécution de la tâche, des incohérences de données peuvent survenir.
Lors de la migration du schéma, DTS ne prend pas en charge la migration des vues matérialisées vers l'instance AnalyticDB for MySQL de destination. Pour utiliser des vues matérialisées, créez-les manuellement dans l'instance de destination une fois la migration terminée.
|
Type |
Description |
|
Limites de la base de données source |
|
|
Autres limites |
|
|
Autres précautions |
DTS met régulièrement à jour la table |
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 vous permet de migrer les données en toute transparence sans interrompre vos applications auto-gérées.
Opérations SQL prises en charge pour la migration incrémentielle
|
Type d'opération |
Instruction SQL |
|
DML |
Remarque
Lorsque vous écrivez des données dans AnalyticDB for MySQL, le système convertit automatiquement les instructions |
|
DDL |
Important Une opération RENAME TABLE peut provoquer des incohérences de données. Par exemple, si vous sélectionnez une seule table comme objet de migration et que vous renommez cette table dans l'instance source pendant la migration, les données de cette table ne seront pas migrées vers la base de données de destination. Pour éviter ce problème, sélectionnez la base de données entière à laquelle appartient la table comme objet de migration lors de la configuration de la tâche de migration de données. Assurez-vous que les bases de données auxquelles appartient la table, avant et après l'opération RENAME TABLE, sont toutes deux incluses dans les objets de migration. |
Autorisations des comptes de base de données
|
Base de données |
Migration du schéma |
Migration complète des données |
Migration incrémentielle des données |
|
PolarDB-X 2,0 |
Autorisation SELECT |
Autorisation SELECT |
Les autorisations REPLICATION SLAVE, REPLICATION CLIENT et 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. |
|
AnalyticDB for MySQL 3,0 |
Autorisations de lecture et d'écriture |
||
Pour créer un compte de base de données et accorder des autorisations :
AnalyticDB for MySQL 3,0 : Créer un compte de base de données.
Mappings des types de données
Pour plus d'informations, consultez la rubrique Mappings des types de données pour la synchronisation initiale du schéma.
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.
-
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. Dans le cas contraire, la tâche pourrait échouer ou entraîner une incohérence des données.
Catégorie
Paramètre
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 concerne une migration 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 de 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 AnalyticDB for MySQL 3.0.
Access Method
Sélectionnez Alibaba Cloud Instance.
Instance Region
Sélectionnez la région où se trouve le cluster AnalyticDB for MySQL 3,0 de destination.
Instance ID
Sélectionnez l'ID du cluster AnalyticDB for MySQL 3,0 de destination.
Database Account
Saisissez le compte de base de données du cluster AnalyticDB for MySQL 3,0 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.
-
Une fois la configuration terminée, cliquez sur Test Connectivity and Proceed en bas de la page.
RemarqueAssurez-vous que les plages d'adresses IP du service DTS sont ajoutées automatiquement ou manuellement aux paramètres de sécurité des bases de données source et de destination afin d'autoriser l'accès depuis les serveurs DTS. Pour plus d'informations, consultez la rubrique Ajouter les adresses IP des serveurs DTS à une liste blanche.
-
Configurez les objets de la tâche.
-
Sur la page Configure Objects, configurez les objets que vous souhaitez migrer.
Parameter
Description
Migration Types
-
Pour une migration complète des données uniquement, sélectionnez Schema Migration et Full Data Migration.
-
Pour une migration sans interruption de service, sélectionnez Schema Migration, Full Data Migration et Incremental Data Migration.
Remarque-
Si vous sélectionnez Full Data Migration, le schéma et les données des tables créées avec l'instruction CREATE TABLE peuvent être migrés vers la base de données de destination.
-
Si vous ne sélectionnez pas Incremental Data Migration, n'écrivez aucune nouvelle donnée dans l'instance source pendant la migration des données afin de garantir la cohérence de ces dernières.
Processing Mode for Existing Destination Tables
Precheck and Report Errors : vérifie si des tables portant les mêmes noms 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 homonymes 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 cette 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 les mêmes noms.
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 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 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 incohérents, seules certaines colonnes de données peuvent être migrées ou la migration peut échouer. Procédez avec prudence.
Table Merging
Si vous sélectionnez Yes, DTS ajoute la colonne
__dts_data_sourceà chaque table pour enregistrer les sources de données. Pour plus d'informations, consultez la rubrique Enable multi-table merge.Si vous sélectionnez No, il s'agit de l'option par défaut.
RemarqueLa fonctionnalité de fusion de tables est configurée au niveau de la tâche, et non au niveau de la table. Pour fusionner certaines tables mais pas d'autres, vous devez créer deux tâches de migration des données distinctes.
AvertissementN'effectuez pas d'opérations DDL pour modifier le schéma de la base de données source ou des tables. Cela pourrait entraîner une incohérence des données ou un échec de la tâche.
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. Remarque-
Vous pouvez sélectionner les objets à migrer au niveau de la base de données, de la table ou de la colonne. Si vous sélectionnez des tables comme objets de migration, d'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.
-
Si vous sélectionnez une base de données entière comme objet de migration, les règles par défaut suivantes s'appliquent :
-
Si une table de la base de données source possède une clé primaire (sur une seule colonne ou composite), la ou les colonnes de clé primaire sont utilisées comme clé de distribution.
-
Si une table de la base de données source ne possède pas de clé primaire, une colonne de clé primaire à incrémentation automatique est générée automatiquement. Cela peut entraîner une incohérence des données entre les bases de données source et 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, la migration d'autres objets dépendant de l'objet renommé peut échouer.
-
Pour filtrer les données à l'aide d'une clause WHERE, cliquez avec le bouton droit sur une table dans la zone Selected Objects et spécifiez les conditions de filtrage 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 un objet de migration dans la zone Selected Objects. Dans la boîte de dialogue qui s'affiche, sélectionnez les opérations SQL souhaitées.
-
-
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é. Vous n'avez pas besoin d'en sélectionner un. Si vous souhaitez des tâches plus stables, vous pouvez acheter un dedicated cluster pour exécuter les tâches de migration DTS.
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 la durée de nouvelle tentative en définissant une valeur comprise entre 10 et 1 440 minutes. Nous vous recommandons de définir une durée supérieure à 30 minutes. Si DTS se reconnecte aux bases de données source et de destination dans le délai spécifié, la tâche de migration reprend automatiquement. Sinon, la tâche échoue.
RemarquePour plusieurs instances DTS partageant la même source ou la même destination, la durée de nouvelle tentative réseau est déterminée par le paramètre de la dernière tâche créée.
Étant donné que la tâche vous est facturée pendant la période de nouvelle tentative de connexion, nous vous recommandons 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é, tel qu'une exception d'exécution DDL ou DML, survient dans la base de données source ou de destination, 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 la durée de nouvelle tentative en définissant une valeur comprise 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. Sinon, 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
Lors de 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 que l'instance de migration est 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 que l'instance de migration est en cours d'exécution.
Environment Tag
Vous pouvez sélectionner un tag d'environnement pour identifier l'instance selon vos besoins. Cette étape n'est pas requise pour cet exemple.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Choisissez si vous souhaitez écrire les informations SQL de pulsation (heartbeat) 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. Si une migration échoue ou si la latence dépasse le seuil, le système envoie une notification d'alerte.
-
Facultatif : Une fois les configurations précédentes terminées, cliquez sur Next: Configure Database and Table Fields pour définir les informations relatives au Type, à la Primary Key Column, à la Distribution Key et à la clé de partition (Partition Key, Partitioning Rules et Partition Lifecycle) pour les tables à migrer dans la base de données de destination.
RemarqueCette étape est disponible uniquement si vous sélectionnez l'option Schema Migration pour le paramètre Migration Types lors de la configuration des objets de la tâche. Vous pouvez sélectionner All pour le paramètre Definition Status afin d'effectuer des modifications.
Vous pouvez sélectionner plusieurs colonnes pour le paramètre Primary Key Column afin de former une clé primaire composite. Vous devez également sélectionner une ou plusieurs colonnes dans le paramètre Primary Key Column pour les utiliser comme Distribution Key et Partition Key. Pour plus d'informations, consultez la rubrique CREATE TABLE.
-
-
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 de vérification 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 qui peuvent ê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 l'instance appartient. La valeur par défaut est « default resource group ». Pour plus d'informations, consultez la rubrique What is resource management?
Instance Class
DTS propose des spécifications de migration avec différents niveaux de performance. La spécification de lien affecte la vitesse de migration. Vous pouvez sélectionner une spécification en fonction de votre scénario métier. Pour plus d'informations, consultez la rubrique Data migration link specifications.
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. Après l'arrêt de la tâche, 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.