En esta página, se describe cómo utilizar MongoDB Compass para conectarse a un host de MongoDB. Puedes conectarte a un host autónomo, un set de réplicas o un clúster fragmentado.
Nota
MongoDB Atlas
Si necesita crear un host MongoDB, considere usar MongoDB Atlas. Atlas es una base de datos como servicio alojada en la nube que no requiere instalación, ofrece un nivel gratuito para comenzar y proporciona una URI copiable para conectar fácilmente Compass a su implementación.
Si necesita instalar Compass, consulte Descargue e instale Compass para obtener instrucciones.
Considerations
Cuando conectas Compass a un set de réplicas, no se recomienda conectarse directamente a un nodo individual de un set de réplicas. Si el nodo al que estás conectado cambia de un nodo primario a un nodo secundario o viceversa como resultado de una elección, Compass puede cerrar la conexión de manera forzada o mostrar datos obsoletos.
En su lugar, para conectarse a un conjunto de réplicas, utilice el conjunto de réplicas SRV record o Replica Set Name al completar su información de conexión.
A partir de MongoDB Compass 1.19, Compass muestra un mensaje de advertencia cuando se conecta a instancias de MongoDB no genuinas, ya que estas instancias pueden comportarse de manera diferente a las instancias oficiales de MongoDB; por ejemplo, características ausentes o incompletas, comportamientos diferentes de las características, etc.
A partir de la versión 1.39.2, MongoDB Compass ya no admite la migración desde archivos de conexión heredados que preceden a la versión 1.31.0. Las conexiones heredadas se refieren a un formato interno de opciones de conexión de Compass que se almacena en disco y ya no se admite después de la versión 1.39.0.
Si tiene conexiones heredadas guardadas en sus favoritos, exporte las conexiones en la versión 1.39.0 para convertirlos al nuevo formato antes de actualizar a la versión 1.39.2 o posterior.
Conectar
Si el nombre de su conexión ya aparece en la Connections Sidebar de su ventana de Compass, haga clic en el nombre de la conexión para conectarse.
De lo contrario, puedes conectar tus implementaciones de una de las siguientes formas:
Se debe proporcionar la cadena de conexión.
Se debe especificar Advanced Connection Options. Las opciones de conexión avanzadas permiten especificar opciones de autenticación, TLS/SSL y SSH. Para obtener más información, se debe consultar Opciones avanzadas de conexión.
Nota
A partir de la versión 1.44.0, puedes conectarte a varias instancias de MongoDB a la vez a través de Compass.
Proporcione su cadena de conexión
Cuando proporcionas una cadena de conexión, Compass es compatible con la mayoría de las opciones de cadena de conexión admitidas por MongoDB.
Por defecto, el valor de socketTimeoutMS de Compass es 60000 o 60 segundos. Si se experimentan tiempos de espera frecuentes en Compass, se debe considerar establecer esta opción en un valor mayor en la cadena de conexión.
Para obtener una lista completa de las opciones de cadenas de conexión a las que Compass brinda soporte, consulta el README de Compass Connection en GitHub.
Abra el New Connection modal.
En el panel inferior del Connections Sidebar, haz clic en Add New Connection para abrir el modal New Connection.
Si ya tiene conexiones enumeradas en Connections Sidebar, haga clic en el icono en la parte superior derecha de la barra lateral para abrir el New Connection modal.
Se debe pegar la cadena de conexión.
Si está la cadena de conexión para la implementación disponible, se puede pegar el string directamente en el cuadro de diálogo. Se puede usar el formato de cadena de conexión estándar o el formato de conexión de lista de nodos iniciales DNS.
Para obtener la cadena de conexión para un clúster de Atlas:
Navegar a la vista de Clusters de Atlas.
Se debe hacer clic en Connect para el clúster deseado.
Haga clic en Connect with MongoDB Compass.
Copie la cadena de conexión proporcionada.
Advertencia
Si hace clic en el formulario de conexión de MongoDB Compass para editar su cadena de conexión, Compass muestra las credenciales en texto plano por defecto.
Para editar las credenciales de la cadena de conexión sin exponer la contraseña, se debe usar la pestaña Advanced Connection Options > Authentication en el formulario de conexión de Compass.
Para aprender a establecer el formato de la cadena de conexión para una implementación que no esté alojada en Atlas, consulta Formato URI de la cadena de conexión.
Conexión al clúster.
Para navegar a la Página Principal de Compass, haga clic en Save, Connect o Save & Connect.
El botón Save guarda tu conexión y cierra el modal sin conectarse aún a tu clúster.
El botón Connect permite realizar la conexión al clúster sin guardar la cadena de conexión ni las credenciales.
El botón Save & Connect por defecto guarda tu información y te conecta con tu clúster.
Importante
Acceso requerido
Una vez que se haya realizado la conexión a la implementación de MongoDB, puede que se necesiten roles de usuario específicos para acceder a diversas características de Compass. Para obtener más información sobre los roles necesarios para las características de Compass, se debe consultar Acceso requerido.
Utiliza opciones de conexión avanzadas
Las opciones avanzadas de conexión ofrecen otras formas de conectar Compass a MongoDB. Las opciones avanzadas de conexión permiten especificar autenticación, TLS/SSL y SSH para realizar la conexión de manera segura a la implementación.
Para obtener detalles sobre cómo especificar las opciones de conexión usando Compass, consulte Opciones avanzadas de conexión.
Configuración del proxy
Para establecer una conexión con las configuraciones de proxy, utilice las siguientes variables de entorno:
Variable | Descripción | Ejemplo | |
|---|---|---|---|
| Conexiones proxy a las URLs | En el siguiente ejemplo se establece la variable de entorno | |
| Conexiones proxy a URLs Si también estableces | El siguiente ejemplo configura la variable de entorno | |
| Conexiones proxy a Si también estableces | En el siguiente ejemplo se configura la variable de entorno | |
| Redirige todas las conexiones a la URL especificada. | El siguiente ejemplo configura la variable de entorno | |
| Lista separada por comas de nombres de host que deben excluirse del uso de proxy. | En el siguiente ejemplo se configura la variable de entorno |
Nota
Compass admite los siguientes tipos de proxy:
Socks5 proxies
Proxies HTTP, también conocidos como proxies HTTPS
Conectar proxies
PAC URLs que se resuelven en uno de los proxies listados anteriormente
Conéctese a Compass desde la línea de comandos
Puede iniciar una sesión de Compass desde la línea de comandos.
En entornos empresariales, un inicio con script puede facilitar la implementación de Compass. Por ejemplo, para limitar el acceso a sistemas confidenciales, puedes configurar un inicio de línea de comandos para que Compass se ejecute en un host de salto.
Para conectarte a Compass usando la línea de comandos, puedes incluir tus opciones de conexión directamente en la cadena de conexión o como argumentos de línea de comandos.
Para especificar las opciones de conexión en la cadena de conexión, se debe usar el siguiente formato:
mongodb-compass 'mongodb://username:password@hostname:port/database?ssl=true&replicaSet=myReplicaSet'
Para más opciones de cadena de conexión, consulta Opciones de cadena de conexión.
Para especificar opciones de conexión como argumentos de línea de comandos, utiliza el siguiente formato:
<path/to/compass/executable> <connection string> --username <username> --password <password>
Para obtener más opciones de conexión de argumentos de línea de comandos, consulta Inicia Compass desde la línea de comandos.
Tip
Para aprender cómo desconectar su implementación, consulte Desconectarse de MongoDB
Ejemplos de cadenas de conexión
Los siguientes ejemplos destacan algunas opciones avanzadas de cadenas de conexión. Para obtener información sobre todas las opciones de cadena de conexión, consulta Opciones de cadena de conexión.
Opciones de TLS
La siguiente cadena de conexión activa TLS usando la opción URI tls. tlsCertificateKeyFile especifica la ruta al certificado del cliente y la llave privada. Especificar el tlsCertificateKeyFile en la cadena de conexión es opcional, a menos que el servidor requiera certificados de cliente o si se está utilizando autenticación de X.509.
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com/?directConnection=true&tls=true&tlsCAFile=path/to/rootCA.crt&tlsCertificateKeyFile=path/to/server_certificate.pem
Para habilitar SSL, utiliza la opción equivalente ssl=true en vez de tls=true.
Autenticación X.509
El siguiente ejemplo demuestra cómo especificar la autenticación X.509 en tu cadena de conexión utilizando la opción de cadena de conexión authMechanism:
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db1.example.com/?authMechanism=MONGODB-X509&tls=true&tlsCertificateKeyFile=/path/to/client_certificate.pem
LDAP
El siguiente ejemplo especifica la autenticación LDAP. Configura authMechanism en plain para especificar el uso del mecanismo de autenticación LDAP y configura authSource en $external para indicar que la base de datos de autenticación es $external.
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db2.example.com/?authMechanism=PLAIN&authSource=$external
Kerberos
El siguiente ejemplo especifica la autenticación de Kerberos. Configura authMechanism en GSSAPI para utilizar el mecanismo de autenticación Kerberos y configura authSource en $external para indicar que la base de datos de autenticación es $external.
mongodb://myDatabaseUser@db3.example.com/?authMechanism=GSSAPI&authSource=$external
Preferencias de lectura/guardar
Para habilitar la preferencia de lectura/escritura en la cadena de conexión, se puede usar la opción readPreference para la preferencia de lectura y la opción w para el nivel de confirmación de escritura.
La siguiente cadena de conexión establece tanto las preferencias de lectura como las de guardado. readPreference=secondary especifica que las operaciones de lectura deben dirigirse a los miembros secundarios del set de réplicas y w=majority asegura que las operaciones de guardado sean reconocidas por la mayoría de los nodos del set de réplicas.
mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db4.example.com/database?readPreference=secondary&w=majority
Nodos analíticos
Para especificar un tipo de nodo analytics en su cadena de conexión:
Establezca su
readPreferenceensecondarypara especificar que las operaciones de lectura deben dirigirse a nodos secundarios.Configura
readPreferenceTagsanodeType:ANALYTICSpara asegurar que las operaciones de lectura estén dirigidas específicamente a los nodos analíticos.
La siguiente cadena de conexión demuestra cómo especificar un tipo de nodo analytics en tu cadena de conexión:
mongodb+srv://myDatabaseUser:D1fficultP%40ssw0rd@db5.example.com/myDatabase?readPreference=secondary&readPreferenceTags=nodeType:ANALYTICS
Para obtener más información sobre el uso de nodos de análisis para aislar cargas de trabajo, consulta query mediante etiquetas de set de réplicas predefinidas.