Migrez les données d'Azure Cosmos DB API for MongoDB vers ApsaraDB for MongoDB à l'aide des outils natifs mongodump et mongorestore.
Précautions
Cette migration est complète. Arrêtez toutes les opérations d'écriture sur la base de données source avant de commencer.
Si vous avez précédemment utilisé
mongodumppour sauvegarder votre base de données, déplacez les fichiers de sauvegarde hors du dossier par défautdump. Sinon, les fichiers existants dans ce dossier seront écrasés.Exécutez les commandes
mongodumpetmongorestoresur le serveur où MongoDB est installé, et non dans le shell mongo.
Autorisations requises
|
Type d'instance |
Autorisation du compte |
|
Azure Cosmos DB |
read |
|
Instance MongoDB de destination |
readWrite |
Prérequis
-
Créez une instance ApsaraDB for MongoDB. Créer une instance.
RemarqueL'instance de destination doit disposer de plus d'espace de stockage que les données source d'Azure Cosmos DB.
Sélectionnez MongoDB version 4.0 ou ultérieure.
Définissez un mot de passe pour l'instance ApsaraDB for MongoDB. Définir un mot de passe.
-
Installez MongoDB sur un serveur. Installer MongoDB.
RemarqueInstallez MongoDB 3.0 ou une version ultérieure.
Ce serveur est un hôte temporaire. Vous pouvez le mettre hors service après la migration.
La partition du répertoire de sauvegarde doit disposer de plus d'espace disque disponible que les données source d'Azure Cosmos DB.
Les étapes suivantes utilisent un serveur Linux à titre d'exemple.
Procédure
Connectez-vous au portail Azure.
Dans le volet de navigation de gauche, cliquez sur Azure Cosmos DB.
Sur la page Azure Cosmos DB, cliquez sur le compte à migrer.
Sur la page des détails du compte, cliquez sur Connection String.
-
Cliquez sur l'onglet Read-only Keys.
Figure 1. Informations de connexion Azure. Les champs incluent HOST (
xxx.documents.azure.cn), PORT (10255), USERNAME, PRIMARY PASSWORD, SECONDARY PASSWORD, PRIMARY CONNECTION STRING, SECONDARY CONNECTION STRING et SSL (true). Seuls HOST, USERNAME et PRIMARY PASSWORD sont nécessaires.RemarqueLes autorisations en lecture seule suffisent pour cette migration.
-
Sur le serveur Linux, exécutez la commande suivante pour sauvegarder la base de données source.
mongodump --host <HOST>:10255 --authenticationDatabase admin -u <USERNAME> -p <PRIMARY PASSWORD> --ssl --sslAllowInvalidCertificatesRemarqueRemplacez
<HOST>,<USERNAME>et<PRIMARY PASSWORD>par les valeurs issues des informations de connexion Azure.Attendez la fin de la sauvegarde. Les données sont enregistrées dans le dossier
dumpdu répertoire actuel. Récupérez le point de terminaison du nœud principal de l'instance ApsaraDB for MongoDB. présentation de la connexion à l'instance.
-
Sur le serveur Linux, exécutez la commande suivante pour restaurer les données dans l'instance ApsaraDB for MongoDB.
mongorestore --host <mongodb_host>:3717 --authenticationDatabase admin -u <username> -p <password> dumpRemarque<mongodb_host> : point de terminaison du nœud principal de l'instance de destination.
<username> : nom d'utilisateur de la base de données de l'instance de destination.
<password> : mot de passe de la base de données de l'instance de destination.
Attendez la fin de la restauration.