Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Menu Docs
Página inicial do Docs
/ /

Criar um cliente MongoDB

Para se conectar a um MongoDB deployment, você precisa de duas coisas:

  • O URI de conexão, também conhecido como string de conexão, informa ao driver do Rust a qual sistema do MongoDB se conectar.

  • Instância do cliente, que cria a conexão com a implantação do MongoDB e permite executar operações nele.

Você também pode usar qualquer um desses componentes para personalizar a maneira como o driver do Rust se comporta enquanto está conectado ao MongoDB.

Este guia mostra como criar uma string de conexão e utilizar uma instância do Client para conectar ao MongoDB.

Um URI de conexão, também conhecido como cadeia de conexão, informa ao driver como se conectar ao MongoDB e como se comportar enquanto estiver conectado.

Uma connection string padrão inclui os seguintes componentes:

Componente
Descrição

mongodb://

Obrigatório. Um prefixo que identifica isso como uma string no formato de conexão padrão.

<db_username>:<db_password>

Opcional. Credenciais de autenticação. Se você incluir estes, o cliente autenticará o usuário no banco de dados especificado no authSource. Para obter mais informações sobre a authSource opção de conexão, consulte o guia Mecanismos de autenticação .

hostname[:port]

Obrigatório. O nome do host e o número da porta opcional em que o MongoDB está sendo executado. Se você não incluir o número da porta, o driver utilizará a porta padrão, 27017.

/defaultauthdb

Opcional. O authentication banco de dados de autenticação a ser usado se a string de conexão incluir credenciais de autenticação, mas não a opção authSource.

?<options>

Opcional. Uma string de consulta que especifica opções específicas de conexão como <name>=<value> pares. Consulte o guia Especificar opções de conexão para obter uma descrição completa dessas opções.

Para obter mais informações sobre a criação de uma connection string, consulte connection strings na documentação do MongoDB Server .

Um cliente gerencia conexões e executa comandos de banco de dados . Para criar uma instância Client, passe sua string de conexão para o método Client::with_uri_str(), conforme mostrado no exemplo a seguir:

let client = Client::with_uri_str(uri)?;

Você pode especificar opções de conexão ao criar um cliente passando um objeto ClientOptions para o método with_options() .

Você também pode especificar opções de conexão em sua string de conexão passando sua string de conexão para o método parse() de uma estrutura ClientOptions.

Os exemplos de código a seguir mostram como criar um cliente, especificar uma opção de conexão de API estável, conectar-se ao MongoDB e verificar se a conexão foi bem-sucedida. Selecione a aba API assíncrona ou API síncrona abaixo para o exemplo de código correspondente:

use mongodb::{ bson::doc, options::{ ClientOptions, ServerApi, ServerApiVersion }, Client };
#[tokio::main]
async fn main() -> mongodb::error::Result<()> {
// Replace the placeholder with your Atlas connection string
let uri = "<connection string>";
let mut client_options = ClientOptions::parse(uri).await?;
// Set the server_api field of the client_options object to Stable API version 1
let server_api = ServerApi::builder().version(ServerApiVersion::V1).build();
client_options.server_api = Some(server_api);
// Create a new client and connect to the server
let client = Client::with_options(client_options)?;
// Send a ping to confirm a successful connection
client.database("admin").run_command(doc! { "ping": 1 }).await?;
println!("Pinged your deployment. You successfully connected to MongoDB!");
Ok(())
}
use mongodb::{ bson::doc, options::{ ClientOptions, ServerApi, ServerApiVersion }, sync::Client };
fn main() -> mongodb::error::Result<()> {
// Replace the placeholder with your Atlas connection string
let uri = "<connection string>";
let mut client_options = ClientOptions::parse(uri).run()?;
// Set the server_api field of the client_options object to Stable API version 1
let server_api = ServerApi::builder().version(ServerApiVersion::V1).build();
client_options.server_api = Some(server_api);
// Create a new client and connect to the server
let client = Client::with_options(client_options)?;
// Send a ping to confirm a successful connection
client.database("admin").run_command(doc! { "ping": 1 }).run()?;
println!("Pinged your deployment. You successfully connected to MongoDB!");
Ok(())
}

Para obter mais informações sobre as opções de conexão disponíveis, consulte o guia Especificar opções de conexão.

Dica

Reutilize seu cliente

Você pode melhorar o desempenho reutilizando seu cliente entre sessões e operações. Você pode utilizar a mesma instância do Client para executar múltiplas tarefas, em vez de criar outra a cada vez. O tipo de Client é seguro para uso concorrente por vários threads ou tarefas assíncronas.

Para saber mais sobre como usar o driver Rust para criar uma instância do Client, consulte a seguinte documentação da API:

Voltar

Começar

Nesta página