Overview
Para conectarte a una implementación de MongoDB, necesitas dos cosas:
El URI de conexión, también conocido como una cadena de conexión, que indica al controlador Ruby a qué implementación de MongoDB conectarse.
Objeto Mongo::Client, que crea la conexión a la implementación de MongoDB y te permite realizar operaciones en él.
También puedes usar cualquiera de estos componentes para personalizar el funcionamiento del controlador Ruby mientras está conectado a MongoDB.
Esta guía muestra cómo crear una cadena de conexión y utilizar un Mongo::Client objeto para conectarse a MongoDB.
URI de conexión
Una cadena de conexión estándar incluye los siguientes componentes:
Componente | Descripción |
|---|---|
| Requerido. Un prefijo que identifica esto como un string en el formato de conexión estándar. |
| opcional. Credenciales de autenticación. Si las incluye, el cliente autentica al usuario contra la base de datos especificada en |
| Requerido. El nombre de host y el número de puerto opcional donde se está ejecutando MongoDB. Si no se incluye el número de puerto, el driver utiliza el puerto por defecto, |
| Opcional. La base de datos de autenticación que se debe usar si la cadena de conexión incluye las credenciales de autenticación |
| Opcional. Un string del query que especifica opciones específicas de conexión como pares |
Para obtener más información sobre cómo crear una cadena de conexión, consulta Cadenas de conexión en la documentación del servidor MongoDB.
Crear un Mongo::Client
Para crear una conexión a MongoDB, construya una instancia de la clase Mongo::Client y pase la URI de conexión al constructor. El siguiente ejemplo construye un objeto Mongo::Client para conectarse a una implementación de MongoDB en el puerto 27017 de localhost:
client = Mongo::Client.new("mongodb://localhost:27017")
Como alternativa, puede pasar una matriz de cadenas, cada una con un nombre de host y un número de puerto, al constructor Mongo::Client. El siguiente ejemplo muestra cómo usar esta sintaxis para conectarse al puerto 27017 de localhost:
client = Mongo::Client.new(['localhost:27017'])
Tip
Reutilizar el cliente
Debido a que cada objeto Mongo::Client representa un grupo de conexiones a la base de datos, la mayoría de las aplicaciones requiere solo una única instancia de Mongo::Client, incluso a través de múltiples solicitudes.
Cerrar un Mongo::Client
Cuando finalices el uso de un objeto Mongo::Client, llama al método close del objeto, como se muestra en el siguiente ejemplo. Esto libera todos los recursos asociados con el objeto.
client.close
Alternativamente, puedes usar la sintaxis de bloque de Ruby para crear un objeto Mongo::Client. Cuando se utiliza esta sintaxis, el cliente se cierra automáticamente después de que el bloque termine de ejecutarse.
El siguiente ejemplo muestra cómo utilizar la sintaxis de bloque para crear un objeto Mongo::Client:
Mongo::Client.new("mongodb://localhost:27017") do |client| # work with the client end
Documentación de la API
Para obtener más información sobre cómo crear un objeto Mongo::Client con el driver Ruby, consulta la documentación de la API de Mongo::Client.