Que vous restaurez une sauvegarde ou que vous migriez un serveur, l'importation de données est une étape clé du processus. MongoDB offre de nombreuses façons d'importer des données dans votre déploiement MongoDB. Vous pouvez importer une collection, une base de données ou l'ensemble du déploiement. Dans cet article, nous parlerons de trois façons différentes d'importer des données dans votre déploiement d'hébergement ScaleGrid MongoDB.
-
MongoRestore et MongoDump
Les outils MongoDump et MongoRestore sont des utilitaires populaires lors de l'importation de données dans des déploiements. MongoRestore vous permet d'importer des collections, une base de données et des déploiements. L'outil MongoRestore importe le contenu d'un vidage de base de données binaire, créé par MongoDump, dans une base de données spécifique. MongoRestore peut importer du contenu dans une base de données existante ou en créer une nouvelle.
MongoRestore n'effectue que des insertions dans la base de données existante et n'effectue pas de mises à jour ni de upserts . Si des données existantes avec le même _id existe déjà sur la base de données cible, MongoRestore ne le fera pas remplacez-le.
Pour importer des données dans votre déploiement ScaleGrid MongoDB à l'aide de MongoRestore, la ligne de commande suivante peut être utilisée :
mongorestore --host <host> --port <port> --username admin --password <pass> /location/to/mongodumpfiles
-
db.copyDatabase()
db.copyDatabase est une commande facile à utiliser intégrée à MongoShell qui vous permet de migrer et de copier facilement des données d'une instance MongoDB ou d'un déploiement vers un autre. La commande db.copyDatabase prend également en charge les noms d'utilisateur et les mots de passe, ce qui facilite la copie des bases de données entre les déploiements. Suivez ces étapes pour copier une base de données à partir du serveur distant :
- Connectez-vous à votre déploiement MongoDB à l'aide du shell mongo. c'est à dire. mongo
-u -p - Exécutez la commande suivante :"db.copyDatabase("
", " ", " ", " ”); "
- Connectez-vous à votre déploiement MongoDB à l'aide du shell mongo. c'est à dire. mongo
-
Instantanés
Les instantanés fournissent un moyen simple de stocker une grande quantité de données MongoDB et fournissent des instantanés ponctuels qui sont parfaits pour restaurer les déploiements MongoDB à partir de zéro. Les déploiements MongoDB de ScaleGrid prennent en charge la restauration des instantanés. REMARQUE :La restauration d'instantanés à l'aide des commandes suivantes écrasera toutes vos données existantes. Nous vous recommandons vivement de sauvegarder les données existantes avant de les écraser avec l'instantané.
- SSH à l'instance MongoDB sur laquelle vous souhaitez restaurer l'instantané. Vous trouverez plus d'informations sur la façon d'obtenir des informations d'identification pour votre déploiement ici.
- Arrêtez le service MongoDB :"sudo service mongod stop"
- Supprimez toutes les données du dossier mongodb_data - "sudo /bin/rm -rf /mongodb_data/*"
- Copiez votre instantané dans le dossier mongodb_data - "sudo mv -r snapshot/* /mongodb_data/"
- Démarrer le service MongoDB - "sudo service mongod start"
C'est tout ! C'est si simple. Nous continuerons à surveiller et à gérer le déploiement de MongoDB. Vous pouvez sauvegarder, restaurer ou cloner ce déploiement MongoDB via ScaleGrid en utilisant les nouvelles données d'instantané.
Consultez également notre nouveau document d'aide sur l'importation de données MongoDB à partir d'un serveur distant et comment migrer votre cluster mLab MongoDB vers ScaleGrid.