MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongo DB - exporter en mode étendu JSON

L'export en mode strict pris en charge par mongoexport et mongoimport est JSON étendu :

Il existe également une représentation plus lâche pour le mongo shell qui ressemble à JSON, mais autorise une syntaxe qui n'est pas JSON valide. Par exemple, la syntaxe du shell autorise les valeurs de chaîne sans guillemets qui représentent des fonctions d'assistance (telles que ISODate() ) pour les types de données étendus.

JSON étendu :

{
   "_id":{
       "$oid":"55d39fac2ba0663a655bee54"
   },
   "day":{
        "$date":"2015-08-18T21:12:12.945Z"
   }
}

mongo syntaxe shell (de type JSON) :

{
  "_id": ObjectId("55d39fac2ba0663a655bee54"),
  "day": ISODate("2015-08-18T21:12:12.945Z")
}

Exportation depuis le mongo coquille

Si vous voulez vraiment exporter une collection en mongo syntaxe shell, vous pouvez diriger la sortie vers un fichier.

Ce format ne sera compris que par le mongo shell, et vous rencontrerez probablement des limitations si vous essayez d'imprimer une grande collection :

mongo server:port/dbname --eval "printjson(db.collection.find().toArray())"

Les outils de ligne de commande standard pour importer/exporter des collections au format JSON sont mongoimport et mongoexport . Celles-ci ne conviennent généralement pas aux sauvegardes de bases de données -- consultez le manuel de MongoDB pour Backup and Recovery tutoriels .