Mongo koleksiyonunu json formatına dökmenin bir yolu var mı? Ya kabukta ya da java sürücüsü kullanarak, en iyi performansa sahip olanı arıyorum.
Mongo koleksiyonunu json formatına dökmenin bir yolu var mı? Ya kabukta ya da java sürücüsü kullanarak, en iyi performansa sahip olanı arıyorum.
Yanıtlar:
Mongo, bir koleksiyon dökümü yapabilen bir mongoexport yardımcı programı (dokümanlara bakın) içerir. Bu yardımcı program yerel libmongoclient kullanır ve muhtemelen en hızlı yöntemdir.
mongoexport -d <database> -c <collection_name>
Ayrıca yararlı:
-o
: çıktıyı dosyaya yaz, aksi takdirde standart çıktı kullanılır ( docs )
--jsonArray
: satır başına bir json nesnesi yerine geçerli bir json belgesi oluşturur ( belgeler )
--pretty
: biçimlendirilmiş json ( dokümanlar ) çıktılar
--pretty
bayrağı kullanın :mongoexport -d mydatabase -c mycollection --pretty
mongoexport --host mongodb1.example.net --port 37017 --username user --password "pass" --collection contacts --db marketing --out mdb1-examplenet.json
--pretty
2.6.10 sürümünden itibaren gitmiş gibi görünüyor .
Bir koleksiyonu boşaltmak / geri yüklemek için mongoexport / mongoimport kullanın:
JSON Dosyasını Dışa Aktar :
mongoexport --db <database-name> --collection <collection-name> --out output.json
JSON Dosyasını İçe Aktar :
mongoimport --db <database-name> --collection <collection-name> --file input.json
UYARI
mongoimport
vemongoexport
tüm zengin BSON veri türlerini güvenilir bir şekilde korumayın çünkü JSON, BSON tarafından desteklenen türlerin yalnızca bir alt kümesini temsil edebilir. Sonuç olarak, bu araçlarla dışa aktarılan veya içe aktarılan veriler bir miktar doğruluk kaybına uğrayabilir.
Ayrıca, http://bsonspec.org/
BSON, hızlı kodlama ve kod çözme için tasarlanmıştır. Örneğin, tamsayılar 32 (veya 64) bitlik tamsayılar olarak saklanır, bu nedenle metne ve metinden ayrıştırılmaları gerekmez. Bu, küçük tam sayılar için JSON'dan daha fazla alan kullanır, ancak ayrıştırılması çok daha hızlıdır.
Kompaktlığa ek olarak BSON, JSON'da bulunmayan ek veri türlerini, özellikle BinData ve Date veri türlerini ekler.
mongoexport
/ mongoimport
gidiş-dönüş yolculuğunda hayatta kalamayacağına dair bir örnek var mı ?
İşte referans için benim komutum:
mongoexport --db AppDB --collection files --pretty --out output.json
Windows 7 (MongoDB 3.4) üzerinde bir yere cmd taşımak zorundadır mongod.exe
ve mongo.exe
dosya bulunduğu =>
C:\MongoDB\Server\3.4\bin
başka buna recongnize does not söyleyerek çalışmayacak mongoexport
komutu.
Mongo belgelerinden:
Mongoexport yardımcı programı bir koleksiyon alır ve JSON veya CSV'ye aktarır. Sorgu için bir filtre veya çıktısı alınacak alanların bir listesini belirtebilirsiniz.
Daha fazlasını buradan okuyun: http://www.mongodb.org/display/DOCS/mongoexport
Tüm koleksiyonları dökmek istiyorsanız şu komutu çalıştırın:
mongodump -d {DB_NAME} -o /tmp
Dizindeki tüm koleksiyon verilerini json
ve bson
uzantıları oluşturacaktır./tmp/{DB_NAME}
mongodump
verileri BSON
formatta çıkarır. mongoexport
Doğru araç olarak adlandırılan diğer cevaplar .
mongoexport -d <database> -c <collection_name> --out <xxx.json> --pretty --host <host> --port <port> --username <user> --authenticationDatabase admin
Belirtebilirsinizhost
,port
,username
,password
bu ve varsayılan kimlik doğrulama veritabanı gibiadmin
.