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
?
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/
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
bsondump collection.bson > collection.json
et alors
mongoimport -d <dbname> -c <collection> < collection.json
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
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).
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"
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.