Después de instalar MongoDB por primera vez, o poner en marcha un nuevo clúster en MongoDB Atlas, uno de los primeros desafíos que puede enfrentar es cómo conectarse a su base de datos para que pueda comenzar a ingresar y consultar datos. Para conectarse a su clúster de MongoDB, necesitará una cadena de conexión.
Una cadena de conexión de MongoDB es un breve fragmento de texto que le indica a un cliente de MongoDB cómo conectarse a su clúster de MongoDB. La URL se puede proporcionar a varias herramientas, como MongoDB Compass y el MongoDB Shell, o se puede utilizar en su propio software construido en uno de los controladores MongoDB para especificar un clúster de MongoDB.
La dirección URL puede contener información diversa, como los servidores que componen el clúster (o cómo averiguar esa información), el nombre de usuario y la contraseña de la base de datos, y el nombre de una base de datos predeterminada que se usará para ejecutar consultas, a menos que se invalide de alguna otra manera.
Hay tres tipos de cadenas de conexión de MongoDB que encontrará: una cadena de conexión de MongoDB Atlas, una cadena de conexión para una instancia que se ejecuta en su propio equipo (localhost) y la cadena de conexión para un clúster autohospedado.
A continuación, explicaremos cómo obtener cada una de estas cadenas de conexión.
En la Interfaz web de MongoDB Atlas, busque el clúster al que conectarse y haga clic en el botón “Conectar“ junto a su nombre. En la siguiente pantalla, seleccione el método que está utilizando para conectarse a MongoDB y se le proporcionará una cadena de conexión adecuada para su clúster. Hay un pequeño botón de “copiar y pegar“ junto a la cadena de conexión para hacerte la vida aún más fácil.
Puede encontrar más información sobre Cadenas de conexión de MongoDB Atlas en la documentación de MongoDB.
Tenga en cuenta que si elige la opción MongoDB Shell, se le proporcionará toda la línea de comandos para iniciar mongosh, y no solo la cadena de conexión.
La cadena de conexión no se completará. Por lo general, habrá marcadores de posición para su nombre de usuario y contraseña, rodeados de corchetes angulares, como este:
mongodb+srv://<username>:<password>@beyondthebasics.abcde.mongodb.net/test
Deberá encontrar el nombre de usuario y la contraseña del usuario de la base de datos o crear un nuevo usuario de base de datos para obtener estas credenciales. Puede hacerlo utilizando el enlace “Acceso a la base de datos“ en el lado izquierdo del sitio del Atlas y haciendo clic en el botón “Agregar nuevo usuario a la base de datos“.
La cadena de conexión de MongoDB para un servidor local normalmente tendría la forma de 'mongodb://localhost:27017/
Para obtener la cadena de conexión en el caso de un conjunto de réplicas de MongoDB autohospedado, deberá conocer los nombres de host o las direcciones IP de los servidores del conjunto de réplicas, así como el nombre del conjunto de réplicas.
Puede especificar los servidores individuales en el conjunto de réplicas incluyéndolos en la cadena de conexión, de la siguiente manera:
mongodb://<host1>:<port1>,<host2>:<port2><host3>,<port3>:/<database>?replicaSet=<replicaSetName>
Si tuviéramos un conjunto de réplicas llamado 'repl1', que consta de tres hosts, '192.168.10.1-3', y los estuviéramos ejecutando todos en el puerto predeterminado, '27017', nuestra cadena de conexión se vería así:
mongodb://192.168.1.1:27017,192.168.1.2:27017,192.168.1.3:27017/<database>?replicaSet=repl1
Una cadena de conexión SRV es un tipo de conexión que comienza con el prefijo 'mongodb+srv://' (en lugar de solo 'mongodb://'). Todas las cadenas de conexión de MongoDB Atlas son cadenas de conexión SRV, lo que las hace más cortas y fáciles de usar. El protocolo SRV permite la detección automática de los servidores en un MongoDB conjunto de réplicas o clúster fragmentado, sin necesidad de especificar las direcciones de servidor individuales.
Los detalles técnicos de cómo funcionan exactamente las cadenas de conexión SRV están un poco fuera de alcance. Afortunadamente, tenemos una publicación de blog: Aquí para SRV You con conexiones de conjuntos de réplicas más fáciles — si quieres aprender todo sobre ellos.
Para conectar MongoDB mediante un identificador uniforme de recursos (URI), debe proporcionar una cadena de conexión que incluya el nombre de host, el puerto, el nombre de la base de datos y las credenciales de autenticación.
Para configurar una conexión de MongoDB, debe instalar el controlador de MongoDB para su lenguaje de programación, crear una cadena de conexión con los parámetros adecuados y usar el método de conexión del controlador para establecer una conexión con el servidor de MongoDB.
Para conectarse a MongoDB, recupere el nombre de host y la información del puerto de Cloud Manager y utilice un cliente de MongoDB, como mongosh o un controlador de MongoDB y, a continuación, utilice db.collection.find() en el shell de MongoDB para consultar documentos de una colección.