Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-11-14 GMT+08:00

Conexão a uma instância de cluster usando Mongo Shell (rede privada)

O Mongo shell é o cliente padrão para o servidor de banco de dados MongoDB. Você pode usar o Mongo Shell para se conectar a instâncias de BD e consultar, atualizar e gerenciar dados em bancos de dados. Para usar o Mongo Shell, baixe e instale o cliente de MongoDB primeiro e, em seguida, use o Mongo shell para se conectar à instância de BD.

Por padrão, uma instância do DDS fornece um endereço IP privado. Se suas aplicações forem implementadas em um ECS e estiverem na mesma região e VPC que as instâncias do DDS, você poderá se conectar a instâncias do DDS usando um endereço IP privado para obter uma taxa de transmissão rápida e alta segurança.

Esta seção descreve como usar o Mongo Shell para se conectar a uma instância de cluster em uma rede privada.

Você pode se conectar a uma instância usando uma conexão SSL ou uma conexão não criptografada. A conexão SSL é criptografada e mais segura. Para melhorar a segurança da transmissão de dados, conecte-se a instâncias usando SSL.

Pré-requisitos

  1. Para obter detalhes sobre como criar e fazer logon em um ECS, consulte Compra de um ECS e Logon em um ECS.
  2. Instale o cliente de MongoDB no ECS. Para garantir a autenticação bem-sucedida, instale o cliente de MongoDB da mesma versão da instância de destino.

    Para obter detalhes sobre como instalar um cliente de MongoDB, consulte Como instalar um cliente de MongoDB?

  3. O ECS pode se comunicar com a instância do DDS. Para mais detalhes, consulte Configuração de regras de grupo de segurança.

Conexão SSL

Se você se conectar a uma instância por meio da conexão SSL, ative SSL primeiro. Caso contrário, um erro é relatado. Para obter detalhes sobre como ativar SSL, consulte Ativação e desativação de SSL.

  1. Faça logon no console de gerenciamento.
  2. Clique em no canto superior esquerdo e selecione uma região e um projeto.
  3. Clique em no canto superior esquerdo da página e escolha Databases > Document Database Service.
  4. Na página Instances, clique no nome da instância.
  5. No painel de navegação à esquerda, escolha Connections.
  6. Na área Basic Information, clique em ao lado do campo SSL.
  7. Carregue o certificado raiz para o ECS a ser conectado à instância.

    A seguir, descrevemos como fazer upload do certificado para um ECS do Linux e Window:

    • No Linux, execute o seguinte comando:
      scp <IDENTITY_FILE><REMOTE_USER>@<REMOTE_ADDRESS>:<REMOTE_DIR>
      • IDENTITY_FILE é o diretório onde o certificado raiz reside. A permissão de acesso ao arquivo é 600.
      • REMOTE_USER é o usuário do sistema operacional ECS.
      • REMOTE_ADDRESS é o endereço do ECS.
      • REMOTE_DIR é o diretório do ECS no qual o certificado raiz é carregado.
    • No Windows, carregue o certificado raiz usando uma ferramenta de conexão remota.

  8. Conecte-se à instância no diretório em que o cliente de MongoDB está localizado.

    Método 1: endereço de conexão HA privada (recomendado)

    O DDS fornece um endereço de conexão HA privada que consiste em endereços IP e portas de todos os nós do MongoDB em uma instância de cluster. Você pode usar esse endereço para se conectar à instância de cluster para melhorar a disponibilidade da instância de cluster.

    Exemplo de comando:

    ./mongo <Private HA connection address> --ssl --sslCAFile <FILE_PATH> --sslAllowInvalidHostnames

    Descrição do parâmetro:

    • Private HA Connection Address: na página Instances, clique no nome da instância. A página Basic Information é exibida. Escolha Connections. Clique na guia Private Connection e obtenha o endereço de conexão da instância atual do campo Private HA Connection Address.
      Figura 1 Obter o endereço de conexão HA privada

      O formato do endereço de conexão privada é o seguinte. O nome de usuário do banco de dados rwuser e o banco de dados de autenticação admin não podem ser alterados.

      mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin

      Preste atenção aos seguintes parâmetros no endereço HA privado:

      Tabela 1 Informações de parâmetro

      Parâmetro

      Descrição

      rwuser

      Nome de usuário do banco de dados

      <password>

      Senha para o nome de usuário do banco de dados. Substitua-a pela senha atual.

      Se a senha contiver sinais de arroba (@), pontos de exclamação (!) ou sinais de porcentagem (%), substitua-os por códigos de URL hexadecimais (ASCII) %40, %21 e %25, respectivamente.

      Por exemplo, se a senha for ****@ %***!, o código de URL correspondente será **** %40%25*** %21.

      192.168.xx.xx:8635,192.168.xx.xx:8635

      Endereço IP e porta do nó mongos da instância de cluster a ser conectada

      test

      O nome do banco de dados de teste. Você pode definir esse parâmetro com base em seus requisitos de serviço.

      authSource=admin

      O banco de dados de autenticação do usuário rwuser deve ser admin. authSource=admin é corrigido no comando.

    • FILE_PATH é o caminho para armazenar o certificado raiz.
    • --sslAllowInvalidHostnames: para garantir que a comunicação interna do cluster não ocupe recursos como o endereço IP do usuário e a largura de banda, o certificado do cluster é gerado usando o endereço IP de gerenciamento interno. --sslAllowInvalidHostnames é necessário para a conexão SSL por meio de uma rede privada.

    Exemplo de comando:

    ./mongo mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames

    Método 2: conexão HA privada (banco de dados e conta definidos pelo usuário)

    Exemplo de comando:

    ./mongo "<Private HA Connection Address>"

    Descrição do parâmetro:

    • Private HA Connection Address: na página Instances, clique no nome da instância. A página Basic Information é exibida. Escolha Connections. Clique na guia Private Connection e obtenha o endereço de conexão da instância atual do campo Private HA Connection Address.
      Figura 2 Obter o endereço de conexão HA privada

      O formato do endereço de conexão HA privada obtido é o seguinte:

      mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin

      A tabela a seguir lista os parâmetros necessários no endereço HA privado.

      Tabela 2 Informações de parâmetro

      Parâmetro

      Descrição

      rwuser

      Nome de usuário do banco de dados. O valor padrão é rwuser. Você pode alterar o valor para o nome de usuário com base em seus requisitos de serviço.

      <password>

      Senha para o nome de usuário do banco de dados. Substitua-a pela senha atual.

      Se a senha contiver sinais de arroba (@), pontos de exclamação (!) ou sinais de porcentagem (%), substitua-os por códigos de URL hexadecimais (ASCII) %40, %21 e %25, respectivamente.

      Por exemplo, se a senha for ****@ %***!, o código de URL correspondente será **** %40%25*** %21.

      192.168.xx.xx:8635,192.168.xx.xx:8635

      Endereço IP e porta do nó mongos da instância de cluster a ser conectada

      test

      O nome do banco de dados de teste. Você pode definir esse parâmetro com base em seus requisitos de serviço.

      authSource=admin

      O banco de dados de autenticação do usuário rwuser é admin.

      NOTA:

      Se você usar um banco de dados definido pelo usuário para autenticação, altere o banco de dados de autenticação no endereço de conexão de alta disponibilidade para o nome do banco de dados definido pelo usuário. Além disso, substitua rwuser pelo nome de usuário criado no banco de dados definido pelo usuário.

    • FILE_PATH é o caminho para armazenar o certificado raiz.
    • --sslAllowInvalidHostnames: para garantir que a comunicação interna do cluster não ocupe recursos como o endereço IP do usuário e a largura de banda, o certificado do cluster é gerado usando o endereço IP de gerenciamento interno. --sslAllowInvalidHostnames é necessário para a conexão SSL por meio de uma rede privada.

    Por exemplo, se você criar um banco de dados definido pelo usuário Database e um usuário test1 no banco de dados, o comando de conexão será o seguinte:

    ./mongo mongodb://test1:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/Database?authSource=Database --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames

    Método 3: usar um endereço IP privado

    Exemplo de comando:

    ./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase admin --ssl --sslCAFile <FILE_PATH> --sslAllowInvalidHostnames

    Descrição do parâmetro:

    • DB_HOST é o endereço IP do nó mongos da instância de cluster a ser conectada.

      Clique no nome da instância. Na página Basic Information, escolha Connections > Private Connection, obtenha o endereço IP privado do nó mongos na guia mongos na área Node Information.

      Figura 3 Obter o endereço IP privado
    • DB_PORT é a porta da instância a ser conectada. A porta padrão é 8635.

      Clique no nome da instância. Na página Basic Information, escolha Connections. Na guia Private Connection, obtenha as informações da porta do banco de dados no campo Database Port da página Basic Information.

      Figura 4 Obter a porta
    • DB_USER é o usuário do banco de dados. O valor padrão é rwuser.
    • FILE_PATH é o caminho para armazenar o certificado raiz.
    • --sslAllowInvalidHostnames: para garantir que a comunicação interna do cluster não ocupe recursos como o endereço IP do usuário e a largura de banda, o certificado do cluster é gerado usando o endereço IP de gerenciamento interno. --sslAllowInvalidHostnames é necessário para a conexão SSL por meio de uma rede privada.

    Digite a senha da conta do banco de dados quando solicitado:

    Enter password:

    Exemplo de comando:

    ./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames

  9. Verifique o resultado da conexão. Se as informações a seguir forem exibidas, a conexão será bem-sucedida.

    mongos>

Conexão não criptografada

Se você se conectar a uma instância por meio de uma conexão não criptografada, desative SSL primeiro. Caso contrário, um erro é relatado. Para obter detalhes sobre como desabilitar SSL, consulte Ativação e desativação de SSL.

  1. Conecte-se ao ECS.
  2. Conecte-se à instância no diretório em que o cliente de MongoDB está localizado.

    Método 1: endereço de conexão HA privada (recomendado)

    Exemplo de comando:

    ./mongo "<Private HA Connection Address>"

    Private HA Connection Address: na página Instances, clique no nome da instância. A página Basic Information é exibida. Escolha Connections. Clique na guia Private Connection e obtenha o endereço de conexão da instância atual do campo Private HA Connection Address.

    Figura 5 Obter o endereço de conexão HA privada

    O formato do endereço de conexão privada é o seguinte. O nome de usuário do banco de dados rwuser e o banco de dados de autenticação admin não podem ser alterados.

    mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin

    A tabela a seguir lista os parâmetros necessários no endereço HA privado.

    Tabela 3 Informações de parâmetro

    Parâmetro

    Descrição

    rwuser

    Nome de usuário do banco de dados

    <password>

    Senha para o nome de usuário do banco de dados. Substitua-a pela senha atual.

    Se a senha contiver sinais de arroba (@), pontos de exclamação (!) ou sinais de porcentagem (%), substitua-os por códigos de URL hexadecimais (ASCII) %40, %21 e %25, respectivamente.

    Por exemplo, se a senha for ****@ %***!, o código de URL correspondente será **** %40%25*** %21.

    192.168.xx.xx:8635,192.168.xx.xx:8635

    Endereço IP e porta do nó mongos da instância de cluster a ser conectada

    test

    O nome do banco de dados de teste. Você pode definir esse parâmetro com base em seus requisitos de serviço.

    authSource=admin

    O banco de dados de autenticação do usuário rwuser deve ser admin. authSource=admin é corrigido no comando.

    Exemplo de comando:

    ./mongo mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin

    Método 2: conexão HA privada (banco de dados e conta definidos pelo usuário)

    Exemplo de comando:

    ./mongo "<Private HA Connection Address>"

    Private HA Connection Address: na página Instances, clique no nome da instância. A página Basic Information é exibida. Escolha Connections. Clique na guia Private Connection e obtenha o endereço de conexão da instância atual do campo Private HA Connection Address.

    Figura 6 Obter o endereço de conexão HA privada

    O formato do endereço de conexão HA privada obtido é o seguinte:

    mongodb://rwuser:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/test?authSource=admin

    A tabela a seguir lista os parâmetros necessários no endereço HA privado.

    Tabela 4 Informações de parâmetro

    Parâmetro

    Descrição

    rwuser

    Nome de usuário do banco de dados. O valor padrão é rwuser. Você pode alterar o valor para o nome de usuário com base em seus requisitos de serviço.

    <password>

    Senha para o nome de usuário do banco de dados. Substitua-a pela senha atual.

    Se a senha contiver sinais de arroba (@), pontos de exclamação (!) ou sinais de porcentagem (%), substitua-os por códigos de URL hexadecimais (ASCII) %40, %21 e %25, respectivamente.

    Por exemplo, se a senha for ****@ %***!, o código de URL correspondente será **** %40%25*** %21.

    192.168.xx.xx:8635,192.168.xx.xx:8635

    Endereço IP e porta do nó mongos da instância de cluster a ser conectada

    test

    O nome do banco de dados de teste. Você pode definir esse parâmetro com base em seus requisitos de serviço.

    authSource=admin

    O banco de dados de autenticação do usuário rwuser é admin.

    NOTA:

    Se você usar um banco de dados definido pelo usuário para autenticação, altere o banco de dados de autenticação no endereço de conexão de alta disponibilidade para o nome do banco de dados definido pelo usuário. Além disso, substitua rwuser pelo nome de usuário criado no banco de dados definido pelo usuário.

    Por exemplo, se você criar um banco de dados definido pelo usuário Database e um usuário test1 no banco de dados, o comando de conexão será o seguinte:

    ./mongo mongodb://test1:<password>@192.168.xx.xx:8635,192.168.xx.xx:8635/Database?authSource=Database

    Método 3: usar um endereço IP privado

    Exemplo de comando:

    ./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase admin

    Descrição do parâmetro:

    • DB_HOST é o endereço IP do nó mongos da instância de cluster a ser conectada.

      Clique no nome da instância. Na página Basic Information, escolha Connections > Private Connection, obtenha o endereço IP privado do nó mongos na guia mongos na área Node Information.

      Figura 7 Obter o endereço IP privado
    • DB_PORT é a porta da instância a ser conectada. A porta padrão é 8635.

      Clique no nome da instância. Na página Basic Information, escolha Connections. Na guia Private Connection, obtenha as informações da porta do banco de dados no campo Database Port da página Basic Information.

      Figura 8 Obter a porta
    • DB_USER é o usuário do banco de dados. O valor padrão é rwuser.
    Digite a senha do banco de dados quando solicitado:
    Enter password:

    Exemplo de comando:

    ./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin

  3. Verifique o resultado da conexão. Se as informações a seguir forem exibidas, a conexão será bem-sucedida.

    mongos>