As instâncias de cluster com shards do ApsaraDB for MongoDB fornecem endpoints separados para os componentes Mongos, Shard e ConfigServer, além de endereços ConnectionStringURI e ConnectionStringURI SRV de alta disponibilidade.
Obter um endpoint
Acesse a página ApsaraDB for MongoDB Sharded Cluster Instances. Na barra de navegação superior, selecione um grupo de recursos e uma região. Em seguida, clique em ID da instância desejada.
No painel de navegação à esquerda da página de detalhes da instância, clique em Database Connections para obter o endpoint do nó desejado.
Detalhes dos endpoints
Tipos de rede de endpoint
|
Tipo de rede |
Descrição |
|
rede privada |
|
|
rede pública |
Conectar-se a uma instância pela rede pública apresenta riscos de segurança. Por padrão, as instâncias do ApsaraDB for MongoDB não fornecem endpoints públicos. Caso precise se conectar pela rede pública, solicite um endpoint público manualmente. |
Tipos de endpoint
|
Tipo de endpoint |
Descrição |
|
Endereço ConnectionStringURI SRV (Recomendado) |
Um registro SRV é um tipo de registro DNS que simplifica a string de conexão e permite a descoberta automática de membros do cluster.
Importante
|
|
Endereço ConnectionStringURI |
O ApsaraDB for MongoDB fornece endereços ConnectionStringURI para os componentes Mongos e Shard. Para ambientes de produção, utilize um endereço ConnectionStringURI em vez de uma string de conexão de nó único. O cliente distribui automaticamente as solicitações entre vários nós Mongos para balanceamento de carga e realiza failover para um nó Mongos saudável caso um fique indisponível. Nota
|
|
Endereço Mongos |
Endpoint de um componente Mongos, incluindo o endpoint do nó primário. Nota
Para testes diários, conectar-se a um único nó Mongos é suficiente. |
|
Endereço Shard |
Endpoint de um componente Shard, incluindo os endpoints do nó primário, nó secundário e nó somente leitura. Nota
|
|
Endereço ConfigServer |
Endpoint de um componente ConfigServer, incluindo os endpoints do nó primário e do nó secundário. Nota
|
As seções a seguir listam o formato, os parâmetros e exemplos para cada tipo de endpoint.
Endereço ConnectionStringURI SRV
Formato:
mongodb+srv://<username>:<password>@<srv-host>/<database>?[authSource=<authenticationDatabase>]<other_options>
Parâmetros:
|
Parâmetro |
Descrição |
|
|
Prefixo que indica o uso de um registro DNS SRV para descoberta de service. |
|
|
Nome de usuário da conta do banco de dados. Valor padrão: root. |
|
|
Senha da conta do banco de dados. |
|
|
Nome do host. |
|
|
Nome do banco de dados que você deseja acessar. Valor padrão: admin. |
|
|
Banco de dados ao qual a conta pertence. Nota
Para strings de conexão SRV do ApsaraDB for MongoDB, o registro TXT define |
|
|
Outros parâmetros opcionais. Nota
Para conexões SRV, a opção ssl é ativada por padrão. Se não precisar usar criptografia ssl, adicione o parâmetro |
Exemplo:
A conta do banco de dados é test e pertence ao banco de dados admin.
mongodb+srv://test:****@dds-2zef4c23****-srv.mongodb.pre.nosql.aliyuncs.com/admin?ssl=false
Endereço ConnectionStringURI
Os endereços ConnectionStringURI estão disponíveis tanto para os componentes Mongos quanto Shard.
Mongos
Formato:
mongodb://<username>:<password>@<host1>:<port1>,<host2>:<port2>,...,<hostN>:<portN>/<database>[?&authSource=<authenticationDatabase>]
|
Parâmetro |
Descrição |
|
|
Nome de usuário da conta do banco de dados. Valor padrão: root. |
|
|
Senha da conta do banco de dados. |
|
|
As Domain Information de um nó Mongos. |
|
|
A Port de um nó Mongos. |
|
|
Nome do banco de dados que você deseja acessar. Valor padrão: admin. |
|
|
Banco de dados ao qual a conta pertence. |
Exemplo:
A conta do banco de dados é test e pertence ao banco de dados admin.
mongodb://test:****@s-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717,s-bp1773180e38****.mongodb.rds.aliyuncs.com:3717/admin
Shard
O endereço ConnectionStringURI para um componente Shard inclui os endpoints de todos os nós no conjunto de réplicas, garantindo alta disponibilidade. Utilize este endereço em ambientes de produção.
Em ambientes de produção, conecte-se sempre usando o endereço ConnectionStringURI. Isso garante que seu cliente possa sempre descobrir e se conectar ao nó primário atual, evitando problemas de leitura/gravação após um failover.
Formato:
mongodb://<username>:<password>@<host1>:<port1>,<host2>:<port2>,...,<hostN>:<portN>/<database>[?&authSource=<authenticationDatabase>]
Parâmetros:
|
Parâmetro |
Descrição |
|
|
Nome de usuário da conta do banco de dados. Valor padrão: root. |
|
|
Senha da conta do banco de dados. |
|
|
As Domain Information dos nós primário, secundário e somente leitura. |
|
|
A Port dos nós primário, secundário e somente leitura. |
|
|
Nome do banco de dados que você deseja acessar. Valor padrão: admin. |
|
|
Banco de dados ao qual a conta pertence. |
|
|
Controla a preferência de leitura para divisão de leitura/gravação. Solicitações de escrita são roteadas para o nó primário, e solicitações de leitura são roteadas conforme o modo selecionado. Valores válidos:
Nota
Quando solicitações de leitura são enviadas a nós secundários e somente leitura, a distribuição de carga pode ser desigual. Para direcionar melhor para nós específicos, defina o parâmetro readPreferenceTags. |
|
|
Roteia solicitações de leitura para nós que correspondem a tags específicas. Geralmente usado com readPreference e incompatível com o modo
|
Combine os parâmetros readPreference e readPreferenceTags para diferentes cenários:
|
Comportamento de failover |
Nós preferidos |
Combinação de parâmetros |
|
Se as leituras dos nós preferidos falharem, roteie as solicitações de leitura para o nó primário |
Preferir o nó primário |
|
|
Preferir nós secundários e somente leitura |
|
|
|
Preferir nós secundários Nota
Se os nós secundários estiverem indisponíveis, as solicitações de leitura farão failover para o nó primário. |
|
|
|
Preferir nós somente leitura Nota
Se os nós somente leitura estiverem indisponíveis, as solicitações de leitura farão failover para o nó primário. |
|
|
|
Se as leituras dos nós preferidos falharem, não roteie as solicitações de leitura para o nó primário |
Ler apenas de nós secundários e somente leitura |
|
|
Ler apenas de nós secundários Nota
Se um nó secundário estiver indisponível, a operação de leitura falhará. |
|
|
|
Ler apenas de nós somente leitura Nota
Se um nó somente leitura estiver indisponível, a operação de leitura falhará. |
|
Exemplo:
mongodb://test:****@d-bp1586cb62bf53b****.mongodb.rds.aliyuncs.com:3717,d-bp1586cb62bf53b****.mongodb.rds.aliyuncs.com:3717/admin
Endereço Mongos
Formato:
<host>:<port>
Parâmetros:
|
Parâmetro |
Descrição |
|
|
As Domain Information de um nó Mongos. |
|
|
A Port de um nó Mongos. |
Exemplo:
s-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717
Endereço Shard
Formato:
<host>:<port>
Parâmetros:
|
Parâmetro |
Descrição |
|
|
As Domain Information de um nó Shard. |
|
|
A Port de um nó Shard. |
Exemplo:
d-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717
Endereço ConfigServer
Formato:
<host>:<port>
Parâmetros:
|
Parâmetro |
Descrição |
|
|
As Domain Information de um nó ConfigServer. |
|
|
A Port de um nó ConfigServer. |
Exemplo:
cs-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717
Conectar-se a um banco de dados MongoDB
-
Reúna as seguintes informações:
-
Uma conta de banco de dados. A conta padrão é root.
ImportantePor segurança, evite usar a conta root em ambientes de produção. Você pode criar uma conta de banco de dados e conceder permissões.
A senha da conta do banco de dados. Se você não definiu uma senha ou a esqueceu, pode definir ou redefinir a senha.
O banco de dados a ser acessado. Quando a conta do banco de dados é root, o banco de dados correspondente é admin.
-
Conecte-se ao banco de dados usando um dos seguintes métodos:
Cenários comuns de conexão
Conectar-se ao MongoDB a partir de um cliente local pela rede pública
Conectar-se a partir de instâncias ECS em diferentes tipos de rede por uma rede privada
Conectar-se a partir de instâncias ECS em diferentes regiões por uma rede privada
Conectar-se a partir de instâncias ECS em diferentes contas por uma rede privada