sql >> Base de Datos >  >> NoSQL >> MongoDB

Mongo DB - exportar en modo JSON extendido

La exportación en modo estricto compatible con mongoexport y mongoimport es JSON extendido:

También hay una representación más flexible para el mongo shell que es similar a JSON, pero permite una sintaxis que no es JSON válida. Por ejemplo, la sintaxis de shell permite valores de cadena sin comillas que representan funciones auxiliares (como ISODate() ) para tipos de datos extendidos.

JSON extendido:

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

mongo sintaxis de shell (similar a JSON):

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

Exportando desde mongo concha

Si realmente desea exportar una colección en mongo sintaxis de shell, puede canalizar la salida a un archivo.

Este formato solo lo entenderá el mongo shell, y es probable que encuentre limitaciones si intenta imprimir una colección grande:

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

Las herramientas de línea de comandos estándar para importar/exportar colecciones como JSON son mongoimport y mongoexport . Por lo general, no son adecuados para copias de seguridad de bases de datos; consulte el manual de MongoDB para Copia de seguridad y recuperación compatibles tutoriales .