Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Controlador Node.js
/

Escolha um destino de conexão

Neste guia, você pode aprender como utilizar uma string de conexão e um objeto do MongoClient para conectar a diferentes tipos de sistemas MongoDB .

Dica

Para saber mais sobre como recuperar sua string de conexão, consulte o guia Conectar via drivers na documentação do Atlas.

Para se conectar a uma MongoDB deployment no Atlas, inclua os seguintes elementos em sua connection string:

  • URL do seu cluster Atlas

  • Nome de usuário do MongoDB

  • Senha do MongoDB

Em seguida, passe sua connection string para o construtor MongoClient .

Ao se conectar ao Atlas, recomendamos usar a opção de cliente Stable API para evitar alterações significativas quando o Atlas atualizar para uma nova versão do MongoDB Server. Para saber mais sobre o recurso de Stable API , consulte o guia deStable API .

O código abaixo mostra como usar o driver Node.js para se conectar a um Atlas cluster. O código também usa o campo server_api para especificar uma versão da API estável.

const { MongoClient, ServerApiVersion } = require("mongodb");
// Replace the placeholder with your Atlas connection string
const uri = "<connection string>";
// Creates a MongoClient with a MongoClientOptions object to set the Stable API version
const client = new MongoClient(uri, {
serverApi: {
version: ServerApiVersion.v1,
strict: true,
deprecationErrors: true,
}
}
);
async function run() {
try {
// Connects the client to the server (optional starting in v4.7)
await client.connect();
// Sends a ping to confirm a successful connection
await client.db("admin").command({ ping: 1 });
console.log("Pinged your deployment. You successfully connected to MongoDB!");
} finally {
// Ensures that the client will close when you finish/error
await client.close();
}
}
run().catch(console.dir);

Para se conectar a uma implantação local do MongoDB autônomo , especifique o host do servidor. Opcionalmente, especifique a porta do servidor. Se nenhuma porta for especificada, a porta padrão será 27017.

Você pode especificar o host e a porta aos quais se conectar usando uma string de conexão, conforme mostrado no código a seguir:

const client = new MongoClient("mongodb://host1:27017");

Você também pode especificar seu host como localhost. O seguinte exemplo de código se conecta ao localhost na porta especificada:

const client = new MongoClient("mongodb://localhost:27017");

Para se conectar a um conjunto de réplicas, recomendamos que você especifique todos os nós que fazem parte do conjunto de réplicas. Se um ou mais nós ficarem indisponíveis, especificar todos os nós permite que o driver ainda se conecte ao conjunto de réplicas se um nó estiver disponível.

No entanto, é suficiente passar o endereço de qualquer nó do conjunto de réplicas para o driver. O nó não precisa ser o primário, e pode ser um nó oculto. Em seguida, o driver descobrirá automaticamente os nós restantes.

O exemplo a seguir mostra como se conectar ao conjunto de réplicas usando uma string de conexão e como verificar o nome do conjunto de réplicas na conexão usando a opção de string de conexão replicaSet:

const client = new MongoClient("mongodb://host1:27017,host2:27017,host3:27017/?replicaSet=myRs");

Observação

Conjunto de réplicas no Docker

Quando um conjunto de réplicas é executado no Docker, ele pode expor apenas um endpoint MongoDB . Nesse caso, o conjunto de réplicas não é detectável. Especificar directConnection=false em seu URI de conexão ou deixar essa opção sem definir pode impedir que seu aplicação se conecte a ele.

Em um ambiente de teste ou desenvolvimento, é possível conectar-se ao conjunto de réplicas especificando directConnection=true. Em um ambiente de produção, recomendamos configurar o cluster para que cada instância do MongoDB seja acessível fora da rede virtual do Docker.

Para usar a descoberta de serviços DNS para procurar o registro DNS SRV do serviço ao qual você está se conectando, especifique o formato de conexão SRV em sua string de conexão. Se você especificar este formato, o driver do Node.js reanalisa automaticamente para novos hosts. Seu sistema pode adicionar hosts à topologia sem exigir alterações na configuração do cliente .

O código a seguir mostra uma string de conexão que usa o formato de conexão SRV:

const uri = "mongodb+srv://<hostname>/"

Para saber mais sobre o formato de conexão SRV, consulte a entrada Formato de conexão SRV no manual do MongoDB Server.

Para saber mais sobre como criar um objeto MongoClient com o driver Node.js, consulte a documentação da API do MongoClient .

Voltar

Pool de Conexões

Próximo

Conecte-se com o Amazon Web Services Lambda

Nesta página