web-dev-qa-db-fra.com

Comment importer un format de fichier .bson sur Mongodb

J'ai exporté la base de données sur le serveur à l'aide de la commande mongodump et le dump est stocké dans le fichier .bson. Je dois importer cela sur mon serveur local à l'aide de la commande mongorestore. Cependant cela ne fonctionne pas. Quelle est la bonne commande mongorestore et quels sont les autres tools to restore db?

119
binalay

C'est très simple d'importer un fichier .bson

mongorestore -d db_name -c collection_name /path/file.bson

Incase seulement pour une collection unique . Essayez ceci:

mongorestore --drop -d db_name -c collection_name /path/file.bson

Pour restaurer le dossier complet exporté par mongodump:

mongorestore -d db_name /path/
258
JERRY

mongorestore est l'outil à utiliser pour importer les fichiers bson vidés par mongodump.

De la docs :

mongorestore prend la sortie de mongodump et la restaure.

Exemple:

# On the server run dump, it will create 2 files per collection
# in ./dump directory:
# ./dump/my-collection.bson
# ./dump/my-collection.metadata.json
mongodump -h 127.0.0.1 -d my-db -c my-collection

# Locally, copy this structure and run restore.
# All collections from ./dump directory are picked up.
scp user@server:~/dump/**/* ./
mongorestore -h 127.0.0.1 -d my-db
60
Cameron
bsondump collection.bson > collection.json

et alors

mongoimport -d <dbname> -c <collection> < collection.json
30
Anton Shutik

Exécutez les commandes suivantes depuis la ligne de commande et vous devriez être dans le répertoire Mongo bin.

mongorestore -d db_name -c collection_name path/file.bson

8
puneet goyal

Vous devez exécuter cette commande mongorestore via cmd et non sur Mongo Shell ... Consultez la commande ci-dessous sur ...

Exécutez cette commande sur cmd (pas sur Mongo Shell)

>path\to\mongorestore.exe -d dbname -c collection_name path\to\same\collection.bson

Ici, path\to\mongorestore.exe est le chemin de mongorestore.exe dans le dossier bin de mongodb. nombase est le nom de la base de données. collection_name est le nom de collection.bson. path\to\same\collection.bson est le chemin d'accès à cette collection.

Maintenant, à partir de Shell mongo, vous pouvez vérifier que la base de données est créée ou non (si elle n’existe pas, la base de données du même nom sera créée avec la collection).

7
Anil Bhatiya

Si votre accès à distance vous pouvez le faire

pour bson:

mongorestore --Host m2.mongodb.net --port 27016 --ssl --username $user --password $password --authenticationDatabase $authdb -d test -c people "/home/${USER}/people.bson"

pour bson compressé au format .gz (gzip):

mongorestore --Host m2.mongodb.net --port 27016 --ssl --username $user --password $password --authenticationDatabase $authdb -d test -c people --gzip --dir "/home/${USER}/people.bson.gz"
0
InLaw

J'ai utilisé ceci:

mongorestore -d databasename -c file.bson fullpath/file.bson

1.copiez le chemin du fichier et le nom du fichier à partir des propriétés (essayez de placer tous les fichiers bson dans un dossier différent), 2. utilisez cette option encore et encore en changeant le nom du fichier.

0
Rochan