Cette rubrique explique comment utiliser Data Transmission Service (DTS) pour migrer les données d'une instance ApsaraDB RDS for MySQL vers DataHub.
Prérequis
-
Créez l'instance source ApsaraDB RDS for MySQL.
RemarquePour créer une instance ApsaraDB RDS for MySQL, consultez la section Créer une instance ApsaraDB RDS for MySQL.
Pour plus d'informations sur les versions prises en charge, reportez-vous à la section Présentation des solutions de migration.
Activez DataHub et créez un projet pour recevoir les données migrées. Pour plus d'informations, consultez les sections Premiers pas avec DataHub et Gérer les projets.
Limitations
Type | Description |
Limites de la base de données source |
|
Autres limites |
|
Cas particuliers |
|
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 section Présentation de la facturation. |
|
Migration incrémentielle des données |
Payant. Pour plus d'informations, consultez la section 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 gérées par vos soins.
Opérations SQL prises en charge pour la migration incrémentielle
|
Type d'opération |
Instruction SQL |
|
DML |
INSERT, UPDATE, DELETE |
|
DDL |
ADD COLUMN Important
Si vous modifiez manuellement la structure de la table dans la base de données cible, redémarrez la tâche : mettez en pause puis démarrez la tâche. |
Autorisations des comptes de base de données
|
Base de données |
Autorisations |
|
Instance source ApsaraDB RDS for MySQL |
Autorisations de lecture sur les objets à migrer. |
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 sections 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 menus 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, lisez attentivement les limitations affichées en haut de la page. Si vous ne respectez pas ces limitations, la tâche peut échouer ou des incohérences de données peuvent survenir.
Section
Paramètre
Description
S.O.
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 la base de données ci-dessous seront automatiquement configurées.
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 la base de données ci-dessous.
Database Type
Sélectionnez MySQL.
Connection Type
Sélectionnez Alibaba Cloud.
Instance Region
Sélectionnez la région où réside l'instance ApsaraDB RDS for MySQL source.
Cross-account
Étant donné que ce scénario migre des données au sein du même compte Alibaba Cloud, sélectionnez No.
RDS Instance ID
Sélectionnez l'ID de l'instance ApsaraDB RDS for MySQL source.
Database Account
Saisissez le compte de base de données pour l'instance ApsaraDB RDS for MySQL source. Pour connaître les exigences en matière d'autorisations, consultez la section Autorisations des comptes de base de données.
Database Password
Saisissez le mot de passe correspondant au compte de base de données.
Encryption
Sélectionnez Non-encrypted ou SSL-encrypted selon vos besoins. Si vous sélectionnez SSL-encrypted, vous devez activer le chiffrement SSL pour l'instance RDS for MySQL au préalable. Pour plus d'informations, consultez la section Utiliser un certificat cloud pour activer rapidement le chiffrement SSL.
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 la base de données ci-dessous seront automatiquement configurées.
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 la base de données ci-dessous.
Database Type
Sélectionnez DataHub.
Connection Type
Sélectionnez Alibaba Cloud.
Instance Region
Sélectionnez la région où réside l'instance DataHub.
Project
Sélectionnez le Project DataHub de destination.
-
Une fois la configuration terminée, cliquez sur Test Connectivity and Proceed en bas de la page.
RemarqueAssurez-vous que le segment d'adresses IP du service DTS est ajouté 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 section Ajouter les adresses IP des serveurs DTS à une liste d'autorisation.
Si la base de données source ou de destination est une base de données gérée par vos soins (le paramètre Access Method n'est pas Alibaba Cloud Instance), vous devez également cliquer sur Test Connectivity dans la boîte de dialogue CIDR Blocks of DTS Servers qui s'affiche.
-
Configurez les objets de la tâche.
-
Sur la page Configure Objects, configurez les objets que vous souhaitez migrer.
Paramètre
Description
Synchronization Types
Si vous devez uniquement effectuer une migration complète, sélectionnez à la fois Schema Migration et Full Data Migration.
Pour effectuer une migration sans temps d'arrêt, sélectionnez Schema Migration, Full Data Migration et Incremental Data Migration.
RemarqueSi vous ne sélectionnez pas Schema Migration, vous devez vous assurer 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 pas de nouvelles données dans l'instance source pendant la migration des données afin de garantir la cohérence des données.
Naming Rules of Additional Columns
Lorsque DTS migre des données vers DataHub, il ajoute des colonnes supplémentaires à la table de destination. En cas de conflit de nom entre une colonne supplémentaire et une colonne existante dans la table de destination, la migration des données échouera. Vous devez sélectionner New Rule ou Previous Rule en fonction de vos besoins métier.
AvertissementAvant de sélectionner une règle pour les colonnes supplémentaires, vous devez évaluer si des conflits de nom surviendront entre les colonnes supplémentaires et les colonnes existantes dans la table de destination. À défaut, une perte de données ou un échec de la tâche peut survenir. Pour plus d'informations sur les règles et définitions des colonnes supplémentaires, consultez la section Noms et définitions des colonnes supplémentaires.
Processing Mode for Existing Tables in Destination
-
Precheck and Report Errors : vérifie si la base de données de destination contient des tables portant les mêmes noms que les tables de la base de données source. S'il n'existe aucune table portant le même nom, la prévérification réussit. Si des tables portent le même nom, une erreur est signalée lors de la prévérification et la tâche de migration des données ne peut pas démarrer.
RemarqueS'il est difficile de supprimer ou de renommer les tables portant le même nom dans la base de données de destination, vous pouvez modifier leurs noms dans la base de données de destination. Pour plus d'informations, consultez la section Mapper les noms de tables et de colonnes.
-
Ignore Errors and Proceed : ignore la vérification des tables portant le même nom dans la base de données de destination.
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 cohérents et qu'un enregistrement dans la base de données de destination possède la même valeur de clé primaire qu'un enregistrement dans la base de données source :
-
Lors de la migration incrémentielle, l'enregistrement de la base de données source écrase l'enregistrement de la base de données de destination.
-
-
Si les schémas de table sont incohérents, l'initialisation des données peut échouer, seules certaines colonnes peuvent être migrées ou la migration peut échouer.
-
Source Objects
Dans la zone Source Objects, cliquez sur les objets à migrer, puis cliquez sur
pour les déplacer vers la zone Selected Objects.RemarqueVous pouvez sélectionner des objets à migrer au niveau de la table.
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 section Mapper les noms de schéma, de table et de colonne individuels.
-
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 section Mapper plusieurs noms de schéma, de table et de colonne.
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 de conditions WHERE, cliquez avec le bouton droit sur la table à migrer dans la zone Selected Objects et spécifiez les conditions de filtrage dans la boîte de dialogue qui s'affiche. Pour obtenir des instructions, consultez la section Définir des conditions de filtrage.
-
Pour sélectionner les opérations DML ou DDL pour la migration incrémentielle au niveau de la base de données ou de la table, cliquez avec le bouton droit sur l'objet de migration et sélectionnez les opérations DML et DDL souhaitées dans la boîte de dialogue qui s'affiche. Pour obtenir la liste des opérations prises en charge, consultez la section Opérations SQL prises en charge pour la migration incrémentielle.
-
Cliquez avec le bouton droit sur une table à migrer dans la zone Selected Objects, décochez la case Sync All Columns dans la boîte de dialogue qui s'affiche, puis définissez la Shardkey (la clé utilisée pour le partitionnement).
-
Cliquez sur Next: Advanced Settings pour configurer les paramètres avancés.
Paramètre
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 cluster dédié pour exécuter les tâches de migration DTS.
Set Alerts
Indiquez si vous souhaitez définir des alertes et 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 un notifications d'alerte. Si une migration échoue ou si la latence dépasse le seuil, le système envoie une notification d'alerte.
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 commence immédiatement à réessayer la connexion. La durée de nouvelle tentative par défaut est de 720 minutes. Vous pouvez personnaliser la durée de nouvelle tentative à une valeur comprise entre 10 et 1 440 minutes. Nous vous recommandons de définir la durée à plus de 30 minutes. Si DTS se reconnecte aux bases de données source et de destination dans la durée spécifiée, la tâche de migration reprend automatiquement. À défaut, 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 commence immédiatement à réessayer 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 à une valeur comprise entre 1 et 1 440 minutes. Nous vous recommandons de définir la durée à plus de 10 minutes. Si les opérations associées réussissent dans la durée de nouvelle tentative spécifiée, la tâche de migration reprend automatiquement. À défaut, la tâche échoue.
ImportantLa valeur de Retry Time for Other Issues doit être inférieure à la valeur de 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 Queries per second (QPS) to the source database, RPS of Full Data Migration et Data migration speed for full migration (MB/s) pour réduire la charge sur la base de données de destination.
RemarqueCet élément de configuration est disponible uniquement si vous sélectionnez Full Data Migration pour 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 RPS of Incremental Data Migration et Data migration speed for incremental migration (MB/s) pour réduire la charge sur la base de données de destination.
RemarqueCet élément de configuration est disponible uniquement si vous sélectionnez Incremental Data Migration pour 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 une balise d'environnement pour identifier l'instance en fonction de vos besoins. Aucune sélection n'est requise pour cet exemple.
Configure ETL
En fonction de vos besoins métier, indiquez si vous souhaitez configurer 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.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Indiquez si vous souhaitez écrire les informations SQL de heartbeat dans la base de données source lorsque l'instance DTS est en cours d'exécution.
-
Yes : les informations SQL de heartbeat ne sont pas écrites dans la base de données source. Cela peut amener l'instance DTS à signaler un retard.
-
No : écrit les informations SQL de heartbeat 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.
-
-
Enregistrez la tâche et lancez une prévérification.
Pour afficher les paramètres de configuration de cette instance lorsque vous appelez 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 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évérification. La tâche ne démarre qu'après avoir réussi la prévérification.
Si la prévérification échoue, cliquez sur View Details à côté de l'élément de vérification ayant échoué, corrigez le problème en suivant les instructions, puis relancez la prévérification.
-
Si un avertissement est signalé lors de la prévérification :
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 en suivant les instructions, puis relancez la prévérification.
Pour les éléments de vérification qui peuvent être ignorés, vous pouvez cliquer sur Confirm Alert Details, Ignore, OK, puis Precheck Again pour ignorer l'élément d'avertissement et relancer la prévérification. Si vous choisissez d'ignorer un avertissement, cela peut entraîner des problèmes tels que des incohérences de 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 liaison pour l'instance de migration de données. Pour plus d'informations, consultez le tableau suivant.
Catégorie
Paramètre
Description
New Instance Class
Resource Group Settings
Sélectionnez le groupe de ressources auquel appartient l'instance. La valeur par défaut est le groupe de ressources par défaut. Pour plus d'informations, consultez la section Qu'est-ce que Resource Management ?
Instance Class
DTS propose des spécifications de migration avec différents niveaux de performance. La spécification de liaison 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 section Spécifications de liaison de migration de 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, l'Status de la tâche est Running.