Importer plus de 1 fichier json en utilisant mongoimport
Je suis nouveau sur mongodb
et que vous voulez savoir sur l'importation d'un json
fichier à partir d'un serveur à un autre. J'ai essayé la commande suivante mongoimport -d test -c bik check.json
et il fonctionne très bien pour moi. Maintenant, je veux savoir quand il y a plusieurs json
fichiers comment puis-je importer tous d'un seul coup. Je ne pouvais pas trouver tout document où il est écrit ce n'est pas possible. S'il vous plaît aidez-moi est-ce possible et comment
source d'informationauteur user850234
Vous devez vous connecter pour publier un commentaire.
Vous pouvez toujours écrire des scripts shell.
Je suis venu avec une façon plus élégante pour importer automatiquement TOUTES les collections:
J'espère que cela est utile.
De commandes Windows version:
Vous pouvez le faire par ce moyen aussi :
Cela a fonctionné pour moi sous MAC OS X
Pour windows fichier bat. Ce serait beaucoup mieux si vous avez une liste de fichiers json dans le dossier. et le nom de la collection correspond au nom dans les fichiers
Je vais vous montrer comment importer de nombreuses collections de manière efficace en utilisant seulement le Linux terminal (il fonctionne aussi sous Mac).
Vous devez avoir tous les fichiers json dans le même dossier et le nom du fichier doit être de la collection qui sera importé dans votre base de données.
Donc, nous allons commencer, ouvrez le dossier qui contient vos fichiers json. Remplacer le
<DATABASE>
à votre nom de base de données, exécutez la ligne ci-dessous:for collection in $(ls | cut -d'.' -f1); do mongoimport --db <DATABASE> --collection ${collection} --file ${collection}.json; done
Mais ce qui s'y passe?
Tout d'abord, vous devez garder à l'esprit que les parenthèses sera exécuté en premier. Dans ce cas, il crée une liste de tous les fichiers d'en obtenir juste le nom de chaque fichier (suppression de son extension).
Deuxièmement, tous liste sera ajouté à une boucle "pour" dans une variable locale appelée collection (cette variable est le nom pourrait être tout ce que vous voulez)
Troisièmement, le "faire" exécuter la ligne d'importation(*)
Enfin, le "fait", de terminer la boucle.
(*) La ligne d'importation est composée par "mongoimport" qui exige que le nom de base de données "--db", le nom de la collection "--collection", et le nom de fichier "--fichier". Ces conditions n'a été remplie par la variable "$collection" créé sur le "pour" trucs
J'espère aidé quelqu'un! Bonne chance les gars 🙂
Une autre solution en ligne (en supposant que vous êtes dans le dossier où les fichiers json):