Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/

Solução de problemas de conexão

Nesta página

  • O botão Cluster Connect está desabilitado
  • Conectando um endereço IP que não está na lista de acesso IP
  • Falha na autenticação do cluster
  • Muitas conexões abertas para seu cluster
  • Desempenho degradado em clusters fragmentados durante picos nas contagens de conexões
  • Tentando se conectar por trás de um firewall
  • Disponibilidade do cluster
  • Solução de problemas do MongoDB Compass
  • Problemas com a cadeia de conexão

Esta página descreve problemas comuns de conexão e possíveis soluções.

Para saber mais sobre conectar a um Atlas cluster, consulte o tutorial Iniciar com Atlas.

Observação

Se você é um cliente corporativo e precisa de suporte, registre um ticket. Para obter suporte da comunidade, visite Recursos da comunidade MongoDB.

Observação

As instâncias sem servidor não permitem conexão por meio de determinados drivers ou versões de drivers no momento. Para saber mais, consulte Limitações de instância sem servidor.

O botão Connect do seu cluster pode estar desabilitado se o cluster estiver no estado de provisionamento. Seu cluster precisa ser provisionado quando for implantado pela primeira vez. Os clusters também devem ser provisionados quando você os dimensiona para cima ou para baixo. O processo provisório pode levar até 10 minutos, após o qual o botão Connect será habilitado.

Antes de se conectar ao Atlas cluster, verifique se você adicionou o endereço IP do host à lista de acesso IP do projeto do cluster. O Atlas permite conexões de cliente somente a partir de endereços IP e intervalos de endereçosCIDR na Lista de Acesso IP.

Para se conectar ao Atlas, você deve autenticar com um usuário do banco de dados MongoDB. Para criar um usuário de banco de dados para seu cluster, consulte Configurar usuários do banco de dados.

Se você criou um usuário e está com problemas para autenticar, tente o seguinte:

  • Verifique se você está usando o nome de usuário e a senha corretos para o usuário do banco de dados e se está se conectando ao cluster correto.

  • Verifique se você está especificando o banco de dados correto do authSource em sua cadeia de conexão.

  • Se você tiver um caractere especial em sua senha, consulte Caracteres especiais na senha da cadeia de conexão.

O Atlas define limites para conexões de entrada simultâneas com um cluster. Para clusters, isso se baseia na camada do cluster. Se você tentar se conectar quando estiver nesse limite, o MongoDB exibirá um erro informando connection refused because too many open connections.

Para uma comparação detalhada das camadas do cluster e suas conexões simultâneas máximas, consulte Limites de conexão e camada de cluster.

  • Feche todas as conexões abertas para seu cluster que não estejam em uso no momento.

  • Escale seu cluster para um nível mais alto para permitir mais conexões simultâneas.

  • Reinicie seu aplicativo.

  • Para evitar esse problema no futuro, considere usar a opção maxPoolSize connection string para limitar o número de conexões no pool de conexões.

Para saber como corrigir esse problema, consulte Corrigir problemas de conexão.

O Atlas pode gerar uma cadeia de conexão SRV otimizada para clusters fragmentados usando os balanceadores de carga do seu serviço de ponto de extremidade privado. Quando você utiliza uma cadeia de conexão otimizada, o Atlas limita o número de conexões por mongos entre seu aplicativo e seu agrupamento fragmentado. As conexões limitadas por mongos melhoram o desempenho durante picos nas contagens de conexões.

Observação

O Atlas não é compatível com cadeias de conexão otimizadas para clusters executados no Google Cloud ou no Azure.

Para saber mais sobre cadeias de conexão otimizadas para clusters fragmentados por trás de um ponto de extremidade privado, consulte Aprimorar o desempenho da conexão dos clusters fragmentados por trás de um ponto de extremidade privado.

O Atlas utiliza um CDN para fornecer conteúdo rapidamente. Se a sua organização usa um firewall, adicione o seguinte host Atlas CDN à lista de permissões do firewall para evitar problemas de acesso à UI do Atlas: https://assets.mongodb-cdn.com/.

Os clusters do Atlas operam na porta 27017. Você precisa acessar essa porta para se conectar aos seus clusters. Além disso, certifique-se de que as portas apropriadas estejam abertas para o seguinte:

  • Nos clusters fragmentados, conceda acesso à porta 27016.

  • Para o BI Connector, conceda acesso à porta 27015.

Você pode verificar sua capacidade de acessar uma porta usando o Outgoing port tester de terceiros.

Exemplo

Se não conseguir acessar essas portas, verifique as configurações do firewall do sistema e certifique-se de que elas não estejam bloqueando o acesso a essas portas.

Se você estiver usando uma connection string mongodb+srv:// e seu driver ou shell não conseguir encontrar o host DNS do Atlas cluster, o cluster poderá ser pausado ou excluído. Verifique se o cluster existe. Se for um cluster pausado, você poderá retomar o cluster, se necessário.

Observação

O Atlas pausa automaticamente M0 clusters ociosos após 60 dias sem conexões.

Se você usar o MongoDB Compass para se conectar ao cluster e tiver problemas, consulte:

Se você utilizar um certificado X.509 auto gerenciado ou um certificado X.509 gerado automaticamente gerenciado pelo Atlas para autenticar no banco de dados MongoDB, quando você se conectar ao MongoDB Compass, você deverá:

  1. No MongoDB Compass, escolha Fill in connection fields individually.

  2. No menu suspenso Authentication, selecione X.509.

  3. Selecione More Options.

  4. No menu suspenso SSL, selecione Server and Client Validation.

  5. Adicione o mesmo caminho para o certificado gerenciado Atlas baixado ou o certificado autogerenciado (dependendo do qual você utiliza) para cada um destes campos: Certificate Authority, Client Certificate e Client Private Key.

Para saber mais, consulte Conectar ao MongoDB na documentação do MongoDB Compass.

O formato de connection string que você utiliza para conectar ao Atlas depende de vários fatores, incluindo:

Verifique sua cadeia de conexão em um ambiente de teste antes de colocá-la em produção.

Se sua senha incluir caracteres especiais e você estiver usando sua senha no URI de cadeia de conexão, codifique os caracteres especiais.

Se você tentar atualizar uma senha com um caractere especial que requer codificação percentual, a seguinte mensagem de erro é exibida:

This password contains special characters which will be URL-encoded.

Observação

Os caracteres a seguir e o caractere de espaço devem ser convertidos usando a codificação de porcentagem se incluído em um nome de usuário ou senha:

: / ? # [ ] @ ! $ & ' ( ) * , ; = %

Por exemplo, se a sua senha no texto sem formatação for p@ssw0rd'9'!, você precisará codificar sua senha como:

p%40ssw0rd%279%27%21

➤ Use o menu suspenso Selecione a linguagem para definir a linguagem do exemplo de codificação nesta seção.


Importante

Não codifique caracteres especiais em sua senha se você estiver usando sua senha fora de um URI de connection string (por exemplo, colando-a no mongosh).

Se você vir esta mensagem de erro, é provável que seu motorista esteja desatualizado. Para obter instruções sobre como atualizar o driver, consulte a documentaçãoespecífica do driver.

Ao usar o formato de cadeia de conexão da lista de sementes de DNS para se conectar ao Atlas, você pode ver o seguinte erro:

DNSHostNotFound: Failed to look up service "<MongoDB service name>"

Esse erro pode ocorrer ao usar o servidor DNS padrão que seu ISP fornece. Esse servidor DNS pode não oferecer suporte a pesquisas SRV que o formato de cadeia de conexão da lista de sementes DNS usa.

Para resolver o problema, você pode tentar alterar sua configuração de DNS para usar um servidor DNS público.

Exemplo

Você pode definir suas configurações de rede para usar o DNS público do Google em vez dos servidores DNS do seu ISP .

Depois de atualizar as configurações de rede para usar um servidor DNS público, conecte-se ao cluster.

Se estiver executando o Ubuntu 18.04 e usando o formato de connection string da lista de sementes DNS (mongodb+srv://) para se conectar ao Atlas a partir de uma das Database Tools (mongodump, mongorestore, etc), você pode ver o seguinte erro:

lookup nta8e.mongodb.net on 123.45.67.8:27017: cannot unmarshal DNS message

Em caso afirmativo, use uma das seguintes opções de conexão:

  • use a opção --uri com uma connection string não SRV (mongodb://).

  • utilize a opção --host para especificar o host para conectar.

Ao usar o formato de connection string da lista de sementes de DNS (mongodb+srv://) com um driver ou o Compass, você pode receber o seguinte erro:

Error: querySrv ECONNREFUSED _mongodb._tcp.<SRV Record>

Para corrigir esse problema, selecione uma versão mais antiga do driver ou o Compass para usar o formato de connection string padrão. Com o Compass, não defina o valor de Registro SRV , defina os valores de Nome do host e Porta .

← Gerencie conexões com o Google Cloud