Utilisez Data Transmission Service (DTS) pour migrer les données d'une base de données MongoDB autonome gérée par l'utilisateur vers une instance ApsaraDB for MongoDB.
Vous pouvez également utiliser les outils MongoDB pour migrer une base de données gérée par l'utilisateur vers une instance autonome.
Pour plus d'informations sur les autres solutions de migration ou de synchronisation des données, consultez la rubrique Migration et synchronisation des données.
Prérequis
La base de données MongoDB source gérée par l'utilisateur et l'instance ApsaraDB for MongoDB de destination doivent utiliser des versions prises en charge. Pour plus d'informations, consultez la rubrique Présentation des solutions de migration.
Nous vous recommandons de prévoir au moins 10 % d'espace de stockage supplémentaire sur l'instance ApsaraDB for MongoDB de destination par rapport à la base de données MongoDB source gérée par l'utilisateur.
Notes
Par défaut, une base de données MongoDB autonome gérée par l'utilisateur ne prend pas en charge l'oplog. Pour utiliser la migration incrémentielle des données, configurez le nœud autonome comme un replica set à nœud unique afin d'activer l'oplog.
Afin d'éviter toute interruption de service, effectuez la migration des données pendant les heures creuses.
Pour connaître les versions et les moteurs de stockage pris en charge par les instances ApsaraDB for MongoDB, consultez la rubrique Versions et moteurs de stockage. Si vous migrez des données entre différentes versions ou moteurs de stockage, vérifiez la compatibilité au préalable.
Les bases de données
adminetlocalne peuvent pas être définies comme base de données source ou de destination.DTS écrit les données de manière concurrente, ce qui peut entraîner une utilisation de l'espace de stockage de 5 à 10 % supérieure dans la base de données de destination par rapport à la base de données source.
Assurez-vous que la base de données de destination ne contient pas de documents ayant la même clé primaire (
_id) que ceux de la base de données source. Dans le cas contraire, une perte de données pourrait survenir. Si de tels documents existent, supprimez-les de la base de données de destination avant la migration, à condition que cela n'affecte pas vos services.
Facturation
|
Type de migration |
Frais de configuration de la connexion |
Frais de trafic réseau public |
|
Migration complète des données |
Gratuit |
Le trafic est facturé lorsque les données sont migrées hors d'Alibaba Cloud via le réseau public. 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 complète des données : DTS migre toutes les données des objets sélectionnés de la base de données MongoDB source vers la base de données MongoDB de destination.
RemarqueDTS prend en charge la migration des bases de données, des collections et des index.
-
Migration incrémentielle des données : Une fois la migration complète terminée, DTS synchronise les modifications incrémentielles des données de la base de données MongoDB source vers la base de données MongoDB de destination.
RemarqueDTS peut synchroniser les opérations de création et de suppression sur les bases de données, les collections et les index.
DTS peut synchroniser les opérations de création, de mise à jour et de suppression sur les documents.
Autorisations des comptes de base de données
|
Source de la base de données |
Autorisations |
|
Base de données MongoDB gérée par l'utilisateur |
L'autorisation |
|
Instance ApsaraDB for MongoDB |
L'autorisation |
Pour créer un compte de base de données et accorder des autorisations :
Pour une base de données MongoDB gérée par l'utilisateur, consultez la documentation officielle MongoDB relative à db.createUser().
Pour une instance ApsaraDB for MongoDB, consultez la rubrique Gérer les comptes de base de données à l'aide de DMS.
Procédure
Connectez-vous à la console DTS.
Dans le volet de navigation de gauche, cliquez sur Data Migration.
-
En haut de la page Migration Tasks, sélectionnez la région de votre instance ApsaraDB for MongoDB de destination.
Dans le coin supérieur droit de la page, cliquez sur Create Data Migration Task.
-
Configurez les bases de données source et de destination.
Catégorie
Paramètre
Description
S.O.
Nom de la tâche
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.
Base de données source
Type d'instance
Sélectionnez l'emplacement de déploiement de la base de données source. Cette rubrique utilise User-Created Database with Public IP Address à titre d'exemple.
RemarqueSi votre base de données gérée par l'utilisateur est d'un type d'instance différent, des préparations supplémentaires peuvent être nécessaires. Pour plus d'informations, consultez la rubrique Préparatifs pour la migration des données.
Région de l'instance
Si vous sélectionnez User-Created Database with Public IP Address, il n'est pas nécessaire de définir le paramètre Instance Region.
RemarqueSi votre base de données auto-hébergée dispose d'une liste d'autorisation configurée, cliquez sur Obtain DTS IP Segment après l'élément de configuration Instance Region pour obtenir les adresses IP des serveurs DTS, puis ajoutez-les à la liste d'autorisation de votre base de données auto-hébergée.
Type de base de données
Sélectionnez MongoDB.
Nom d'hôte ou adresse IP
Saisissez l'adresse de connexion de la base de données MongoDB gérée par l'utilisateur. Dans cet exemple, saisissez une adresse IP publique.
Port
Saisissez le port de service de la base de données MongoDB gérée par l'utilisateur.
RemarqueDans cet exemple, le port de service doit être accessible via le réseau public.
Nom de la base de données
Saisissez le nom de la base de données d'authentification contenant le compte de base de données.
Compte de base de données
Saisissez le compte de la base de données MongoDB gérée par l'utilisateur. Pour connaître les autorisations requises, consultez la section Autorisations des comptes de base de données.
Mot de passe de la base de données
Saisissez le mot de passe du compte de base de données.
RemarqueAprès avoir saisi les informations de la base de données source, cliquez sur Test Connectivity à côté de Database Password pour vérifier les informations. Si les informations sont correctes, un message Passed s'affiche. Si un message Failed s'affiche, cliquez sur Diagnose à côté de Failed et ajustez les informations de la base de données source selon les instructions.
Mode de connexion
Sélectionnez Non-encrypted.
RemarqueVous pouvez sélectionner SSL-encrypted uniquement lors de la migration des données depuis une base de données MongoDB Atlas.
Base de données de destination
Type d'instance
Sélectionnez MongoDB Instance.
Région de l'instance
Sélectionnez la région de l'instance ApsaraDB for MongoDB de destination.
ID de l'instance MongoDB
Sélectionnez l'ID de l'instance ApsaraDB for MongoDB de destination.
Nom de la base de données
Saisissez le nom de la base de données d'authentification contenant le compte de base de données.
Compte de base de données
Saisissez le compte de l'instance ApsaraDB for MongoDB. Pour connaître les autorisations requises, consultez la section Autorisations des comptes de base de données.
Mot de passe de la base de données
Saisissez le mot de passe du compte de base de données.
RemarqueAprès avoir saisi les informations de la base de données de destination, cliquez sur Test Connectivity à côté de Database Password pour vérifier les informations. Si les informations sont correctes, un message Passed s'affiche. Si un message Failed s'affiche, cliquez sur Diagnose à côté de Failed et ajustez les informations de la base de données de destination selon les instructions.
-
Une fois la configuration terminée, cliquez sur Set Whitelist and Next.
Si la source ou la destination est une instance de base de données Alibaba Cloud telle que ApsaraDB RDS for MySQL ou ApsaraDB for MongoDB, DTS ajoute automatiquement les plages CIDR de ses serveurs dans la région correspondante à la liste d'autorisation de l'instance. Si la source ou la destination est une base de données gérée par l'utilisateur sur une instance ECS, DTS ajoute automatiquement les plages CIDR de ses serveurs aux règles de sécurité du groupe de sécurité de l'instance ECS. Vous devez également vous assurer que la base de données gérée par l'utilisateur autorise l'accès depuis l'instance ECS. Si votre base de données est un cluster déployé sur plusieurs instances ECS, vous devez ajouter manuellement les plages CIDR DTS aux règles de sécurité de chaque instance ECS supplémentaire. Si la source ou la destination est une base de données dans un centre de données sur site ou sur une autre plateforme cloud, vous devez ajouter manuellement les plages CIDR des serveurs DTS au pare-feu ou au groupe de sécurité de cet environnement. Pour obtenir la liste des plages CIDR des serveurs DTS, consultez la rubrique Plages CIDR des serveurs DTS.
AvertissementL'ajout des plages CIDR 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. Il vous incombe de mettre en œuvre des mesures de sécurité de base, notamment l'utilisation de mots de passe robustes, la restriction des ports ouverts, l'utilisation de l'authentification pour les appels API internes, la révision régulière et la restriction des segments réseau inutiles, ou la connexion via des réseaux privés tels qu'Express Connect, VPN Gateway ou Smart Access Gateway.
-
Sélectionnez les types de migration et les objets.
Paramètre
Description
Types de migration
-
Pour effectuer uniquement une migration complète des données, sélectionnez Full Data Migration.
-
Pour migrer les données avec un temps d'arrêt minimal, sélectionnez à la fois Full Data Migration et Incremental Data Migration.
Remarque-
DTS prend en charge la migration incrémentielle des données pour une instance autonome uniquement après avoir activé l'oplog pour celle-ci.
-
Si vous ne sélectionnez pas la migration incrémentielle des données, n'écrivez pas de nouvelles données dans la base de données source pendant la migration complète des données afin de garantir la cohérence des données.
Objets de migration
-
Dans la zone Available, sélectionnez les objets à migrer et cliquez sur l'icône
pour les déplacer vers la zone Selected Objects.RemarqueDTS ne prend pas en charge la migration des bases de données
admin,localouconfig. -
Vous pouvez sélectionner des bases de données, des collections ou des fonctions comme objets de migration.
-
Par défaut, les noms des objets restent identiques dans les bases de données source et de destination. Pour renommer un objet dans la destination, utilisez la fonctionnalité de mappage des noms d'objets. Pour plus d'informations, consultez la rubrique Mappage des noms d'objets.
Renommer l'objet mappé
Utilisez cette fonctionnalité pour renommer les objets migrés dans la base de données de destination. Pour plus d'informations, consultez la rubrique Mappage des noms d'objets.
Durée de nouvelle tentative de connexion
Par défaut, DTS tente de reconnecter pendant 12 heures. Vous pouvez personnaliser cette durée. Si la connexion à la base de données source ou de destination est rétablie dans le délai spécifié, la tâche reprend automatiquement. Dans le cas contraire, la tâche échoue.
RemarqueL'instance DTS est facturée pendant la période de nouvelle tentative. Nous vous recommandons de définir une durée de nouvelle tentative raisonnable ou de libérer l'instance DTS rapidement après la libération des instances source et de destination.
-
-
Une fois la configuration terminée, cliquez sur Precheck and Start dans le coin inférieur droit de la page.
RemarqueAvant le démarrage de la tâche de migration, DTS exécute une pré-vérification. La tâche ne peut démarrer qu'après avoir réussi cette pré-vérification.
-
Si la pré-vérification échoue, cliquez sur l'icône
à côté de l'élément ayant échoué pour afficher les détails.Corrigez les problèmes selon les instructions et relancez la pré-vérification.
Si vous n'avez pas besoin de corriger les éléments d'avertissement, vous pouvez sélectionner Ignore puis cliquer sur Ignore Warnings and Rerun Precheck pour relancer la pré-vérification.
Une fois la pré-vérification réussie, cliquez sur Next.
Sur la page Confirm Settings, sélectionnez une Instance Class et cochez la case Data Transmission Service (Pay-As-You-Go) Service Terms.
-
Cliquez sur Buy and Start pour démarrer la tâche de migration.
-
Migration complète des données
N'arrêtez pas manuellement la tâche, car cela pourrait entraîner une incomplétude des données. Attendez que la tâche se termine. Elle s'arrêtera automatiquement.
-
Migration incrémentielle des données
La tâche ne s'arrête pas automatiquement. Vous devez l'arrêter manuellement.
RemarqueNous vous recommandons d'arrêter la tâche à un moment approprié, par exemple pendant les heures creuses ou avant de basculer les charges de travail vers l'instance ApsaraDB for MongoDB de destination.
Attendez que l'état de la tâche passe à Incremental Data Migration et affiche Undelayed. Ensuite, cessez d'écrire des données dans la base de données source pendant quelques minutes. L'état Incremental Data Migration peut temporairement afficher un retard.
Une fois que l'état Incremental Data Migration revient à Undelayed, arrêtez manuellement la tâche. À ce stade, l'état de la tâche sur la page Migration Tasks est Migrating, et la progression de la Full Migration indique 100 %.
-
Basculez vos charges de travail vers l'instance ApsaraDB for MongoDB.