Yanıtlar:
Bir .bson dosyasını içe aktarmak çok basittir :
mongorestore -d db_name -c collection_name /path/file.bson
Yalnızca tek bir koleksiyon için gerekliyse.
mongorestore --drop -d db_name -c collection_name /path/file.bson
Dışa aktarılan klasörün tamamını geri yüklemek için mongodump:
mongorestore -d db_name /path/
Mongorestore -h [host] -u [user] -p [pass] -d [database] -c [collection] [bson file]
mongorestoretarafından atılan bson dosyalarını içe aktarmak için kullanılacak araçtır mongodump.
Gönderen docs :
mongorestore çıktıyı mongodump'tan alır ve geri yükler.
Misal:
# 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
dump/dbName/collectionName.bsonKlasör yapısını korumam gerekir mi? Kullandım mongodump, ancak şimdi mongorestoreuzak bir Linux kutusunda kullanarak içe aktarmak istiyorum .
mongorestore --collection people --db accounts myDump/accounts/people.bson
bsondump collection.bson > collection.json
ve sonra
mongoimport -d <dbname> -c <collection> < collection.json
mongoimport and mongoexport do not reliably preserve all rich BSON data types because JSON can only represent a subset of the types supported by BSON. As a result, data exported or imported with these tools may lose some measure of fidelity.
Komut satırından aşağıdakileri çalıştırın ve Mongo bin dizininde olmalısınız.
mongorestore -d db_name -c collection_name path/file.bson
Bu mongorestore komutunu Mongo Shell'de değil cmd üzerinden çalıştırmalısınız ... Aşağıdaki komutu inceleyin ...
Bu komutu cmd'de çalıştırın (Mongo kabuğunda değil)
>path\to\mongorestore.exe -d dbname -c collection_name path\to\same\collection.bson
İşte mongodb'un bin klasörünün path\to\mongorestore.exeyolu mongorestore.exe. dbname, veritabanının adıdır. collection_namecollection.bson dosyasının adıdır. path\to\same\collection.bsonbu koleksiyona giden yoldur.
Şimdi mongo kabuğundan veritabanının oluşturulup oluşturulmadığını doğrulayabilirsiniz (yoksa, aynı ada sahip veritabanı koleksiyonla oluşturulacaktır).
Sadece kimse hala mongorestore ile mücadele varsa referans için.
Monogorestore'u terminal / komut isteminde çalıştırmanız gerekir, mongo konsolunda değil.
$ mongorestore -d db_name /path_to_mongo_dump/
daha fazla bilgi için resmi belgeleri ziyaret edebilirsiniz
https://docs.mongodb.com/manual/reference/program/mongorestore/
Uzaktan erişiminiz varsa bunu yapabilirsiniz
bson için:
mongorestore --host m2.mongodb.net --port 27016 --ssl --username $user --password $password --authenticationDatabase $authdb -d test -c people "/home/${USER}/people.bson"
.gz (gzip) biçiminde sıkıştırılmış bson için:
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"
mongorestore -d db_adı / yol /
bu sorguyu mongoDb'nin bin klasöründe çalıştırdığınızdan emin olun
C: \ Program Dosyaları \ MongoDB \ Server \ 4.2 \ bin -
sonra yukarıdaki komutu çalıştırın.
mongoexportYalnızca tek koleksiyonları dışa aktarıyorsanız, dışa aktarılan bson dosyası için de yararlıdır .mongoimportbana "geçersiz karakter" hataları veriyordu. Teşekkürler!