Overview
Esta guía muestra cómo crear una aplicación que utiliza el MongoDB Rust Driver para conectarse a un clúster MongoDB alojado en MongoDB Atlas. Para aprender a conectarse a MongoDB utilizando un driver o lenguaje de programación diferente, consulta nuestro lista de drivers oficiales.
El driver Rust es una librería de funciones que puedes usar para conectar y comunicarte con MongoDB.
MongoDB Atlas es un servicio de base de datos gestionada en la nube que aloja las implementaciones de MongoDB. Se puede crear una implementación propia gratuita de MongoDB Atlas (sin necesidad de tarjeta de crédito) siguiendo los pasos de esta guía.
Sigue los pasos de esta guía para conectar una aplicación Rust de muestra a una implementación de MongoDB Atlas.
Descargue e instale
Instala Rust y Cargo.
Asegúrese de tener Rust 1.74 o posterior y Cargo, el gestor de paquetes de Rust, instalados en su entorno de desarrollo.
Para información sobre cómo instalar Rust y Cargo, consulta la guía oficial de Rust sobre descargar e instalar Rust.
Crea un directorio de proyecto.
En tu shell, ejecuta el siguiente comando para crear un directorio llamado rust_quickstart para este proyecto:
cargo new rust_quickstart
Cuando este comando se complete correctamente, tendrás un archivo Cargo.toml y un directorio src con un archivo main.rs en tu directorio rust_quickstart.
Ejecute el siguiente comando para navegar en el directorio del proyecto:
cd rust_quickstart
Instala el driver de Rust.
Agrega las siguientes cajas a tu proyecto al incluirlos en la lista de dependencias que se encuentra en el archivo Cargo.toml de tu proyecto:
mongodbel paquete del controlador Rustserde, la caja de serializaciónfutures, una caja de runtime asíncrono que proporciona abstracciones básicas
Tip
La caja mongodb resuelve la caja bson, que es la caja primaria de representación de datos de MongoDB. Puedes omitir la bson caja en tu lista de dependencias.
El controlador admite tanto tiempos de ejecución asíncronos como sincrónicos. Para ver listas de dependencias de ejemplo para cada runtime, selecciona entre las siguientes opciones Asynchronous API y pestañas Synchronous API:
[dependencies] serde = "1.0.188" futures = "0.3.28" tokio = {version = "1.32.0", features = ["full"]} [dependencies.mongodb] version = "3.5.2"
[dependencies] serde = "1.0.188" [dependencies.mongodb] version = "3.5.2" features = ["sync"]
Para obtener más información sobre los entornos de ejecución asíncronos y síncronos, consulte el Guía de APIs asíncronas y síncronas.
Después de completar estos pasos, tendrás Rust y Cargo instalados y un nuevo proyecto de Rust con las dependencias necesarias del controlador.
Cree una implementación de MongoDB
Se puede crear una implementación de nivel gratuito de MongoDB en MongoDB Atlas para almacenar y gestionar los datos. MongoDB Atlas aloja y gestiona la base de datos MongoDB en la nube.
Crea una implementación gratuita de MongoDB en Atlas.
Completa la Guía de inicio de MongoDB para configurar una nueva cuenta de Atlas y cargar datos de muestra en una nueva implementación de MongoDB de nivel gratuito.
Después de completar estos pasos, habrá una nueva implementación de nivel gratuito de MongoDB en Atlas, credenciales de usuario de base de datos y datos de muestra cargados en la base de datos.
Crear una cadena de conexión
Puedes conectarte a tu implementación de MongoDB proporcionando un URI de conexión, también llamado cadena de conexión. La cadena de conexión da instrucciones al driver sobre cómo conectarse a una implementación de MongoDB y cómo comportarse mientras está conectado.
La cadena de conexión incluye el nombre de host o la dirección IP y el puerto de la implementación, el mecanismo de autenticación, las credenciales de usuario cuando sea aplicable, y las opciones de conexión.
Para conectarte a una instancia o implementación que no esté alojado en Atlas, consulta Otras formas de conectarse a MongoDB.
Encuentra tu cadena de conexión de MongoDB Atlas.
Para recuperar la cadena de conexión para la implementación que creó en el paso anterior, inicie sesión en su cuenta de Atlas y navegue a la página Clusters bajo la sección Database. Haga clic en el botón Connect para la nueva implementación.

Si aún no tienes configurado un usuario de base de datos, MongoDB te pedirá que crees y configures un nuevo usuario.
Haz clic en el botón Drivers debajo de Connect to your application y selecciona "Rust" en el menú de selección Driver y la versión que más se asemeje a la versión que instalaste en el menú de selección Version.
Asegúrate de que la opción View full code sample esté desmarcada para ver solo la cadena de conexión.
Actualiza el marcador de posición de la contraseña.
Pega esta cadena de conexión en un archivo en tu editor de texto preferido y reemplaza el marcador de posición <db_password> con la contraseña de tu usuario de base de datos. La cadena de conexión ya está completada con el nombre de usuario de tu usuario de base de datos.
Guarda este archivo en una ubicación segura para usarlo en el siguiente paso.
Después de completar estos pasos, hay una cadena de conexión que contiene el nombre de usuario y la contraseña de la base de datos.
Nota
Si tienes problemas en este paso, consulta la etiqueta Stack Overflow de MongoDB o la Reddit Community de MongoDB para obtener asistencia técnica general, o consulta la guía de Resolución de problemas de conexión.
Conéctese a MongoDB
Crea tu aplicación de Rust.
Abre el archivo llamado main.rs en tu directorio de proyecto rust_quickstart/src. En este archivo, puedes comenzar a redactar tu aplicación.
Copie y pegue el siguiente código en el archivo main.rs:
use mongodb::{ bson::{Document, doc}, Client, Collection }; async fn main() -> mongodb::error::Result<()> { // Replace the placeholder with your Atlas connection string let uri = "<connection string URI>"; // Create a new client and connect to the server let client = Client::with_uri_str(uri).await?; // Get a handle on the movies collection let database = client.database("sample_mflix"); let my_coll: Collection<Document> = database.collection("movies"); // Find a movie based on the title value let my_movie = my_coll.find_one(doc! { "title": "The Perils of Pauline" }).await?; // Print the document println!("Found a movie:\n{:#?}", my_movie); Ok(()) }
use mongodb::{ bson::{Document, doc}, sync::{Client, Collection} }; fn main() -> mongodb::error::Result<()> { // Replace the placeholder with your Atlas connection string let uri = "<connection string URI>"; // Create a new client and connect to the server let client = Client::with_uri_str(uri)?; // Get a handle on the movies collection let database = client.database("sample_mflix"); let my_coll: Collection<Document> = database.collection("movies"); // Find a movie based on the title value let my_movie = my_coll .find_one(doc! { "title": "The Perils of Pauline" }) .run()?; // Print the document println!("Found a movie:\n{:#?}", my_movie); Ok(()) }
Asigna la cadena de conexión.
Reemplaza el marcador de posición <connection string URI> con la cadena de conexión que se copió del paso Crear una cadena de conexión de esta guía.
Ejecuta tu aplicación Rust.
Desde tu directorio de proyecto rust_quickstart, ejecuta el siguiente comando para compilar y ejecutar esta aplicación:
cargo run
La salida de la línea de comandos contiene detalles sobre el documento de película recuperado:
Found a movie: Some( Document({ "_id": ObjectId(...), "title": String( "The Perils of Pauline", ), "plot": String( "Young Pauline is left a lot of money ...", ), "runtime": Int32( 199, ), "cast": Array([ String( "Pearl White", ), String( "Crane Wilbur", ), ... ]), }), )
Si encuentras un error o no ves ninguna salida, asegúrate de haber especificado la cadena de conexión correcta en el archivo main.rs y de haber cargado los datos de muestra.
Nota
Si tienes problemas en este paso, consulta la etiqueta Stack Overflow de MongoDB o la Reddit Community de MongoDB para obtener asistencia técnica general, o consulta la guía de Resolución de problemas de conexión.
Después de completar estos pasos, habrá una aplicación en funcionamiento que utiliza el driver para conectarse a la implementación de MongoDB, ejecuta una query sobre los datos de muestra e imprime el resultado.
Próximos pasos
¡Felicidades por completar el tutorial de inicio rápido!
En este tutorial, creaste una aplicación en Rust que se conecta a una implementación MongoDB alojada en MongoDB Atlas y recupera un documento que coincide con una query.
Aprenda más sobre el driver MongoDB Rust a través de los siguientes recursos:
Descubrir cómo realizar operaciones de lectura y escritura en la sección Operaciones CRUD.
Aprenda cómo aplicar conceptos de CRUD para compilar una aplicación web sencilla con Rocket en el tutorial Crear una aplicación web CRUD con Rocket.
