En esta página, se enumeran todas las opciones de conexión a su base de datos mediante cadenas de conexión SRV y cadenas de conexión estándar.
Las opciones de conexión son pares en la siguiente forma: name=value.
La opción
nameno distingue entre mayúsculas y minúsculas cuando se utiliza un driver.La opción
nameno distingue mayúsculas de minúsculas cuando se usamongosh.El
valuesiempre distingue entre mayúsculas y minúsculas.
Separe las opciones con el carácter ampersand (&) name1=value1&name2=value2. En el siguiente ejemplo, una conexión incluye las opciones replicaSet y connectTimeoutMS:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db1.example.net:27017,db2.example.net:2500/?replicaSet=test&connectTimeoutMS=300000
Nota
Separador de punto y coma para los argumentos de la cadena de conexión
Para garantizar la compatibilidad con versiones anteriores, los controladores aceptan puntos y comas (;) como separadores de opciones.
Opción de set de réplicas
La siguiente cadena de conexión se conecta a un set de réplicas llamado myRepl con nodos que se ejecutan en los hosts especificados. Se autentica como el usuario myDatabaseUser con la contraseña D1fficultP%40ssw0rd:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com:27017,db1.example.com:27017,db2.example.com:27017/?replicaSet=myRepl
Opción de conexión | Descripción |
|---|---|
Especifica el nombre del Conjunto de réplicas, si es miembro de un conjunto de réplicas. Configure Al conectarse a un conjunto de réplicas, proporcione una lista inicial de los miembros del | |
Especifica si el cliente se conecta directamente al
|
Opciones de conexión
Opciones de TLS
La siguiente cadena de conexión a un set de réplicas incluye la opción tls=true. Se autentica como el usuario myDatabaseUser con la contraseña D1fficultP%40ssw0rd.
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&tls=true
También puede utilizar la opción ssl=true equivalente:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&ssl=true
Opción de conexión | Descripción |
|---|---|
Habilita o deshabilita TLS/SSL para la conexión:
La opción es Si el shell de | |
Habilita o deshabilita TLS/SSL para la conexión:
La opción Si el shell de | |
Especifica la ubicación de un archivo El cliente presenta este archivo a la instancia
Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. Esta opción de cadena de conexión no está disponible para el shell | |
Especifica la contraseña para descifrar Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. Esta opción de cadena de conexión no está disponible para el shell | |
Especifica la ruta a un Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. Esta opción de cadena de conexión no está disponible para el shell | |
Omite la validación de los certificados presentados por la instancia de Establecido en Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. Esta opción de cadena de conexión no está disponible para el shell ADVERTENCIA: Deshabilitar la validación de certificados crea una vulnerabilidad. | |
Desactiva la validación del nombre de host del certificado presentado por la instancia de Establezca en Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. Esta opción de cadena de conexión no está disponible para el shell ADVERTENCIA: Deshabilitar la validación de certificados crea una vulnerabilidad. | |
Desactiva varias validaciones de certificados. Establezca en Esta opción de cadena de conexión no está disponible para el shell ADVERTENCIA: Deshabilitar la validación de certificados crea una vulnerabilidad. |
Opciones de tiempo de espera
Opción de conexión | Descripción |
|---|---|
El tiempo en milisegundos en que se intenta una conexión antes de que se agote el tiempo de espera. El valor por defecto es 10 000 milisegundos, pero algunos controladores podrían tener un valor diferente. Para obtener más detalles, consulte la documentación del driver. | |
Opciones de compresión
Opción de conexión | Descripción | ||||||||
|---|---|---|---|---|---|---|---|---|---|
String delimitada por comas de compresores para habilitar la compresión de red para la comunicación entre este cliente y una instancia de Puede especificar los siguientes compresores: Si especifica varios compresores, el orden en el que enumera los compresores es importante, así como el iniciador de la comunicación. Por ejemplo, si el cliente especifica los siguientes compresores de red Los mensajes se comprimen únicamente cuando ambas partes habilitan la compresión de red y comparten un compresor común. De lo contrario, los mensajes entre las partes no se comprimen.
| |||||||||
Un número entero que especifica el nivel de compresión si se utiliza zlib para Puede especificar un valor entero con un rango de
Respaldado por |
Opciones del pool de conexiones
La mayoría de los drivers implementan algún tipo de manejo de pool de conexiones. Algunos controladores no son compatibles con los pools de conexiones. Consulte la documentación de su driver para obtener más información sobre la implementación del agrupamiento de conexiones. Estas opciones permiten a las aplicaciones configurar el pool de conexiones al conectarse a la implementación de MongoDB.
Opción de conexión | Descripción |
|---|---|
La cantidad máxima de conexiones en el pool de conexiones. El valor por defecto es | |
La cantidad mínima de conexiones en el pool de conexiones. El valor por defecto es La opción | |
Número máximo de conexiones que un pool puede establecer simultáneamente. El valor predeterminado es
Incrementar el valor de | |
El número máximo de milisegundos que una conexión puede permanecer inactiva en el pool antes de ser eliminada y cerrada. Esta opción no es compatible con todos los controladores. | |
Un número por el que el controlador multiplica el Esta opción no es compatible con todos los controladores. | |
El tiempo máximo en milisegundos que un hilo puede esperar para que una conexión esté disponible. Para conocer los valores por defecto, consulte la documentación del driver. Esta opción no es compatible con todos los controladores. |
Opciones de nivel de confirmación de escritura
Controladores de MongoDB
Puedes especificar la restricción de escritura tanto en la cadena de conexión como en un parámetro de métodos como insert o update. Si se especifica en ambos lugares, el parámetro del método anula la cadena de conexión.
Las cadenas de conexión de implementación de MongoDB Atlas utilizan "majority" de forma predeterminada. Si no especificas el nivel de confirmación de escritura para una implementación de MongoDB Atlas, este aplica"majority".
La siguiente cadena de conexión a un set de réplicas especifica un nivel de confirmación de escritura "majority" y un tiempo de espera de 5 segundos utilizando el parámetro de nivel de confirmación de escritura wtimeoutMS:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&w=majority&wtimeoutMS=5000
Opción de conexión | Descripción |
|---|---|
Corresponde a la opción Puede especificar un Para más detalles, consulte | |
IMPORTANTE: La opción Corresponde al nivel de confirmación de escritura Cuando | |
Corresponde a la Si establece |
Para obtener más información, consulte el nivel de confirmación de escritura.
Opciones de readConcern
Para el motor de almacenamiento WiredTiger, MongoDB introduce la opción readConcern para sets de réplicas y particiones de sets de réplicas.
El nivel de consistencia de lectura permite a los clientes elegir un nivel de aislamiento para sus lecturas de sets de réplicas.
La siguiente cadena de conexión a un set de réplicas especifica readConcernLevel=majority:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&readConcernLevel=majority
Opción de conexión | Descripción |
|---|---|
El nivel de aislamiento. Acepta uno de los siguientes valores: Esta opción de cadena de conexión no está disponible para |
Para obtener más información, consulta el nivel de consistencia de lectura.
Opciones de preferencia de lectura
Las preferencias de lectura describen el comportamiento de las operaciones de lectura con respecto a los sets de réplicas. Estos parámetros le permiten especificar preferencias de lectura por conexión en la cadena de conexión.
Por ejemplo:
La siguiente cadena de conexión a un set de réplicas especifica el modo de preferencia de lectura
secondaryy un valor demaxStalenessSecondsde 120 segundos:mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&readPreference=secondary&maxStalenessSeconds=120 La siguiente cadena de conexión a un clúster particionado especifica el modo de
secondarypreferencia de lectura y un valor demaxStalenessSecondsde 120 segundos:mongodb://myDatabaseUser:D1fficultP%40ssw0rd@mongos1.example.com,mongos2.example.com/?readPreference=secondary&maxStalenessSeconds=120 La siguiente cadena de conexión a un clúster fragmentado especifica el modo de preferencia de lectura
secondaryyreadPreferenceTagstres:mongodb://myDatabaseUser:D1fficultP%40ssw0rd@mongos1.example.com,mongos2.example.com/?readPreference=secondary&readPreferenceTags=dc:ny,rack:r1&readPreferenceTags=dc:ny&readPreferenceTags=
El orden importa al usar múltiples readPreferenceTags. Las readPreferenceTags se prueban en orden hasta que se encuentra una coincidencia. Una vez encontrada, esa especificación se utiliza para encontrar todos los nodos elegibles coincidentes y se ignoran los readPreferenceTags restantes. Para obtener más detalles, consulte el Orden de coincidencia de etiquetas.
Opción de conexión | Descripción |
|---|---|
Especifica las preferencias de lectura para esta conexión. Los valores posibles son: Las transacciones que contienen operaciones de lectura deben usar la preferencia de Esta opción de cadena de conexión no está disponible para el shell | |
Especifica, en segundos, cuán obsoleto puede estar un secundario antes de que el cliente deje de usarlo para operaciones de lectura. Para obtener más información, consulte Preferencia de Lectura Por defecto, no hay un límite máximo de antigüedad y los clientes no consideran la demora de un secundario al elegir dónde dirigir una operación de lectura. El valor mínimo de | |
Especifica el documento de etiquetas como una lista de pares clave-valor separados por comas y separados por dos puntos. Por ejemplo,
Para especificar una lista de documentos de etiquetas, utiliza múltiples El orden importa al usar múltiples Esta opción de cadena de conexión no está disponible para el shell |
Para obtener más información, consulte las Preferencias de lectura.
Opciones de autenticación
La siguiente cadena de conexión a un set de réplicas especifica el authSource a la base de datos admin. Es decir, las credenciales del usuario se autentican en la base de datos admin.
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?replicaSet=myRepl&authSource=admin
Si el nombre de usuario o la contraseña incluyen los siguientes caracteres, dichos caracteres deben convertirse utilizando codificación de porcentaje:
$ : / ? # [ ] @
Opción de conexión | Descripción | |
|---|---|---|
Nombre de la base de datos asociada a las credenciales del usuario. Si se especifica, el valor predeterminado es Los MongoDB ignora si no se proporciona un nombre de usuario en la cadena de conexión o a | ||
Mecanismo de autenticación para la conexión. Sin un Solo las instancias de MongoDB Enterprise Para usar Para usar, Cuando uses Si el ID de clave de acceso de AWS, la clave de acceso secreta o el token de sesión incluyen los siguientes caracteres, dichos caracteres deben convertirse usando codificación por porcentaje. Como alternativa, si el ID de la clave de acceso de AWS, la clave de acceso secreta o el token de sesión se definen en su plataforma mediante sus respectivas variables de entorno de AWS IAM, Para ver un ejemplo de uso del mecanismo de autenticación Consulte Autenticación en implementaciones autogestionadas para obtener más información sobre el sistema de autenticación en MongoDB. Considere también usar X.509 para autenticar clientes en MongoDB autogestionado para obtener más información sobre la autenticación x509. | ||
Especifica las propiedades para el Los posibles pares clave-valor son:
| ||
Establezca el nombre del servicio Kerberos al conectarse a instancias de MongoDB con Kerberos. Este valor debe coincidir con el nombre del servicio establecido en las instancias de MongoDB a las que se está conectando.
|
Opciones de selección y descubrimiento de servidores
MongoDB ofrece las siguientes opciones para configurar cómo los controladores de MongoDB y las instancias de mongos seleccionan un servidor al que dirigir las operaciones de lectura o guardado.
Opción de conexión | Descripción |
|---|---|
El tamaño (en milisegundos) de la ventana de latencia para seleccionar entre múltiples instancias adecuadas de MongoDB. Por defecto: 15 milisegundos. Todos los conductores usan | |
Especifica cuánto tiempo (en milisegundos) se debe bloquear para la selección del servidor antes de lanzar una excepción. Por defecto: 30.000 milisegundos. | |
Controladores de un solo hilo únicamente. Los controladores multiprocesos y | |
Por defecto:
| |
Solo clientes de un solo subproceso. Controla con qué frecuencia el cliente verifica el estado de la conexión TCP a la implementación de MongoDB. Si se especifica un valor más bajo, el cliente detecta los problemas de red más rápidamente, pero utiliza más CPU. Por defecto: 5 segundos. Esta opción no es compatible con todos los drivers. Consulte la documentación de los drivers. |
Varias configuraciones
Opción de conexión | Descripción |
|---|---|
Especifique un nombre personalizado de la aplicación. El nombre de la aplicación aparece en:
La opción de conexión
| |
Permite lecturas reintentables. Los valores posibles son:
| |
Active escrituras reintentables. Los valores posibles son:
Los controladores de MongoDB reintentan las operaciones de confirmación y aborto de las transacciones independientemente del valor de | |
Los valores posibles son:
Para conocer la configuración por defecto, consulte la documentación de su driver. No todos los controladores ofrecen soporte para la opción | |
Especifica si el cliente se está conectando a un balanceador de carga. Esta opción es Puede establecer esta opción en
| |