Docs Menu
Docs Home
/ /
/ / /

Ejemplos de mongoexport

Esta página muestra ejemplos de mongoexport.

Ejecute mongoexport desde la línea de comandos del sistema, no desde el mongo caparazón.

En el siguiente ejemplo, mongoexport exporta datos de la colección contacts en la users base de datos en formato CSV al /opt/backups/contacts.csv archivo.

La instancia mongod mongoexport a la que se conecta se está ejecutando en 27017el puerto local.

Al exportar en formato CSV, debe especificar los campos de los documentos que desea exportar. La operación especifica los campos name y address que desea exportar.

mongoexport --db=users --collection=contacts --type=csv --fields=name,address --out=/opt/backups/contacts.csv

El resultado sería entonces similar a lo siguiente:

name, address
Sophie Monroe, 123 Example Road
Charles Yu, 345 Sample Street

Solo para exportaciones CSV, también puede especificar los campos en un archivo que contenga la lista de campos separados por líneas para exportar. El archivo debe tener solo un campo por línea.

Por ejemplo, puede especificar los campos name y address en un archivo fields.txt:

name
address

Luego, utilizando el --fieldFile Opción, especifique los campos a exportar con el archivo:

mongoexport --db=users --collection=contacts --type=csv --fieldFile=fields.txt --out=/opt/backups/contacts.csv

La opción permite excluir nombres de campo en una exportación CSV. El siguiente ejemplo exporta --noHeaderLine los name address campos y de la contacts colección en la users base de datos y utiliza para suprimir la salida de los nombres de campo como primera --noHeaderLine línea:

mongoexport --db=users --collection=contacts --type=csv --fields=name,address --noHeaderLine --out=/opt/backups/contacts.csv

La salida CSV se parecería entonces a:

Sophie Monroe, 123 Example Road
Charles Yu, 345 Sample Street

Este ejemplo crea una exportación de la contacts colección desde la instancia de MongoDB que se ejecuta en el puerto 27017 local. Esto escribe la exportación contacts.json en el archivo en formato JSON.

mongoexport --db=sales --collection=contacts --out=contacts.json

El siguiente ejemplo exporta la colección contacts en la base de datos marketing desde una instancia remota de MongoDB que requiere autenticación.

Especifique:

Tip

Omita la opción --password para que mongoexport solicite la contraseña:

mongoexport --host=mongodb1.example.net --port=27017 --username=someUser --authenticationDatabase=admin --collection=contacts --db=marketing --out=mdb1-examplenet.json

Como alternativa, puede utilizar la opción para especificar el host, el puerto, el nombre de usuario, la base de datos de autenticación y la base de --uri datos.

Tip

Omita la contraseña en la cadena URI para que mongoexport la solicite:

mongoexport --uri='mongodb://someUser@mongodb0.example.com:27017/marketing?authsource=admin' --collection=contacts --out=mdb1-examplenet.json

Puede exportar solo los resultados de una query proporcionando un filtro de query con la opción --query, y limitar los resultados a una sola base de datos utilizando la opción "--db".

Por ejemplo, este comando devuelve todos los documentos en la sales colección de la base de datos contacts que contienen un campo llamado dept igual a "ABC" y el campo date mayor o igual a ISODate("2018-01-01") (usando el formato canónico para fechas { "$date": "YYYY-MM-DDTHH:mm:ss.mmm<offset>"} )

mongoexport --db=sales --collection=contacts --query='{"dept": "ABC", date: { $gte: { "$date": "2018-01-01T00:00:00.000Z" } }}'

Se debe encerrar el documento de query entre comillas simples ('{ ... }') para garantizar que no haya interacción con el entorno de shell.

Nuevo en la versión 100.1.0.

Para conectarse a un clúster de MongoDB Atlas que se ha configurado para admitir la autenticación mediante credenciales de AWS IAM, proporcione un connection string a mongoexport similar al siguiente:

mongoexport 'mongodb+srv://<aws access key id>:<aws secret access key>@cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' <other options>

Conectarse a Atlas usando credenciales de AWS IAM de esta manera utiliza el MONGODB-AWS authentication mechanism y el $external authSource, como se muestra en este ejemplo.

Si utiliza un token de sesión de AWS, proporciónelo también con el valor AWS_SESSION_TOKEN authMechanismProperties, de la siguiente manera:

mongoexport 'mongodb+srv://<aws access key id>:<aws secret access key>@cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS&authMechanismProperties=AWS_SESSION_TOKEN:<aws session token>' <other options>

Nota

Si el ID de la clave de acceso de AWS, la clave de acceso secreta o el token de sesión incluyen los siguientes caracteres:

: / ? # [ ] @

esos caracteres deben convertirse utilizando codificación por porcentaje.

Como alternativa, el ID de clave de acceso de AWS, la clave de acceso secreta y, opcionalmente, el token de sesión se pueden proporcionar fuera de la cadena de conexión utilizando las opciones --username, --password y --awsSessionToken, de la siguiente manera:

mongoexport 'mongodb+srv://cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' --username <aws access key id> --password <aws secret access key> --awsSessionToken <aws session token> <other options>

Cuando se proporcionan como parámetros de línea de comandos, estas tres opciones no requieren codificación por porcentaje.

También se pueden establecer estas credenciales en la plataforma usando variables estándar de entorno AWS IAM. mongoexport comprueba las siguientes variables de entorno cuando se usa el MONGODB-AWS authentication mechanism:

  • AWS_ACCESS_KEY_ID

  • AWS_SECRET_ACCESS_KEY

  • AWS_SESSION_TOKEN

Si se establecen, estas credenciales no necesitan especificarse en la cadena de conexión ni a través de sus opciones explícitas.

Nota

Si se elige usar las variables de entorno de AWS para especificar estos valores, no se pueden mezclar ni combinar con las opciones explícitas o de la cadena de conexión correspondientes para estas credenciales. Se deben utilizar las variables de entorno para el ID de la clave de acceso y la clave de acceso secreta (y el token de sesión si se utiliza), o especificar cada una de estas utilizando las opciones explícitas o de la cadena de conexión.

El siguiente ejemplo establece estas variables de entorno en el shell bash:

export AWS_ACCESS_KEY_ID='<aws access key id>'
export AWS_SECRET_ACCESS_KEY='<aws secret access key>'
export AWS_SESSION_TOKEN='<aws session token>'

La sintaxis para configurar variables de entorno en otros shells será diferente. Consulta la documentación de tu plataforma para obtener más información.

Puedes comprobar que estas variables de entorno se han establecido con el siguiente comando:

env | grep AWS

Una vez configurado, el siguiente ejemplo se conecta a un clúster de MongoDB Atlas usando estas variables de entorno:

mongoexport 'mongodb+srv://cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' <other options>

Volver

Comportamiento

En esta página