Todos os produtos
Search
Central de documentação

Database Autonomy Service:Perguntas frequentes sobre o DBGateway

Última atualização: Jun 29, 2026

Este tópico descreve a estrutura de diretórios do DBGateway, as operações básicas e a solução de problemas comuns.

Estrutura de diretórios do DBGateway

dbgateway
|-- bin
|   |-- dbgateway
|   \-- dbgateway-manager
|-- conf
|   |-- dbgateway.conf
|   \-- server.crt
\-- log
    |-- dbgateway.err
    |-- dbgateway.log
    \-- dbgateway_manager.log    
Nota
  • O diretório bin contém dbgateway (programa principal) e dbgateway-manager (script de gerenciamento para manutenção do DBGateway).

  • O diretório conf armazena dbgateway.conf (arquivo de configuração do DBGateway) e server.crt (certificado de chave pública para comunicação).

  • O diretório log inclui dbgateway.err (saída de erros do DBGateway), dbgateway.log (log principal do DBGateway) e dbgateway_manager.log (log do script de gerenciamento).

Operações básicas

  • Visualize o log do DBGateway

    • O caminho completo do arquivo de log do DBGateway é /opt/dbgateway/log/dbgateway.log.

    • Esse arquivo de texto simples pode ser visualizado com ferramentas padrão, como vim, tail, cat e less.

    Se a equipe de suporte do Database Autonomy Service (DAS) solicitar o log do DBGateway para solucionar problemas, faça login no servidor onde o DBGateway está implantado. Execute o comando abaixo para obter as últimas 200 entradas de log e envie a saída para a equipe.

    tail -n 200 /opt/dbgateway/log/dbgateway.log
  • Verifique se o processo do DBGateway está em execução

    1. Faça login no console do DAS.

    2. No painel de navegação à esquerda, clique em Resource Management > DBGateways.

    3. Na página DBGateways, verifique o Current Status do DBGateway.

      Se o Current Status for Normal, o processo do DBGateway está ativo. Caso contrário, execute o seguinte comando no servidor onde o DBGateway está implantado:

      /opt/dbgateway/bin/dbgateway-manager -d status
      • Se o processo do DBGateway estiver em execução, o comando retornará:

        DBGateway is running.
      • Se o processo do DBGateway não estiver em execução, o comando retornará:

        DBGateway is dead.
      Nota

      Essa verificação confirma apenas a existência do processo do DBGateway, mas não garante seu funcionamento correto.

  • Reinicie o DBGateway

    1. Verifique se o processo do DBGateway está em execução conforme descrito na seção anterior.

    2. Reinicie o DBGateway.

      • Se o processo do DBGateway estiver em execução:

        • Na página DBGateways, localize o DBGateway desejado e clique em Management > Restart na coluna Actions.

        • Como alternativa, execute o comando abaixo no servidor onde o DBGateway está implantado:

          /opt/dbgateway/bin/dbgateway-manager -d restart
      • Se o processo do DBGateway não estiver em execução:

        Essa operação não está disponível no console do DAS. É necessário reiniciar o processo pela linha de comando. Execute o seguinte comando no servidor onde o DBGateway está implantado:

        /opt/dbgateway/bin/dbgateway-manager -d restart
  • Atualize o DBGateway

    Na página DBGateways, localize o DBGateway e clique em Management > Upgrade na coluna Actions.

  • Pare o DBGateway

    • Na página DBGateways, localize o DBGateway e clique em Management > Stop na coluna Actions.

    • Como alternativa, execute o comando a seguir no servidor onde o DBGateway está implantado:

       /opt/dbgateway/bin/dbgateway-manager -d stop
  • Exclua o DBGateway

    Nota
    • Após excluir um DBGateway, todos os recursos do DAS associados às instâncias de banco de dados correspondentes ficarão indisponíveis.

    • Não é possível excluir um DBGateway cujo Current Status seja Normal. Pare o DBGateway antes de prosseguir.

    1. Na página DBGateways, localize o DBGateway e clique em Management > Delete na coluna Actions.

    2. Opcional: Execute o comando abaixo no servidor onde o DBGateway está implantado para remover o diretório de instalação.

      rm -rf /opt/dbgateway
  • Reinstale o DBGateway

    Após excluir o DBGateway, reimplante-o no mesmo servidor. Utilize o comando de implantação fornecido no console do DAS ao adicionar a instância de banco de dados.

Solução de problemas de implantação

Ao conectar uma instância de banco de dados usando um database gateway in centralized mode ou um database gateway in host mode, você recebe um comando de implantação. O comando a seguir é um exemplo. Os valores de id e token servem apenas para demonstração. Utilize os valores do seu próprio comando de implantação.

sudo wget -O install-dbgateway http://hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/DBGateway/install/install-dbgateway && sudo /bin/bash install-dbgateway --id xxx --token xxx --endpoint master-hdm-cn-hangzhou-inner.aliyuncs.com --region cn-hangzhou
  • Falha ao baixar o script de implantação do DBGateway

    • Caso apareça a mensagem wget command not found, o utilitário wget não está instalado. Execute um dos comandos abaixo para instalar o wget:

      sudo apt-get install wget

      ou

      yum -y install wget
    • Verifique se o servidor consegue se conectar à rede do Object Storage Service (OSS).

      No servidor, execute ping para o domínio do OSS. Neste exemplo, o domínio é hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com. Use o domínio presente no seu comando de implantação.

      ping hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com
      • Se o comando retornar a mensagem abaixo, o domínio não pôde ser resolvido. Verifique as configurações do servidor DNS e garanta que o serviço DNS esteja funcionando corretamente.

        ping: unknown host hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com  
      • Caso o comando ping trave sem gerar saída, a conexão de rede falhou. Verifique os itens a seguir:

        • Configuração de rede do servidor.

        • Tipo de acesso à rede do servidor (Internet ou VPC).

        • Região selecionada, caso o tipo de acesso seja VPC.

  • Teste a conectividade com o servidor do DAS

    Execute o comando abaixo no servidor onde deseja implantar o DBGateway. Neste exemplo, o domínio do servidor DAS é master-hdm-cn-hangzhou.aliyuncs.com. Utilize o domínio do seu comando de implantação.

    telnet master-hdm-cn-hangzhou.aliyuncs.com 80
    • Se o comando retornar Name or service not known, o domínio não foi resolvido. Revise as configurações do servidor DNS e certifique-se de que o serviço DNS opera normalmente.

    • Se o comando retornar Trying seguido de um endereço IP, como Trying 10.0.XX.XX, e depois travar, a rede estará inacessível. Analise os pontos abaixo:

      • Configuração de rede do servidor.

      • Tipo de acesso à rede do servidor (Internet ou VPC).

      • Região escolhida, se o acesso for via VPC.

    • Se o comando apresentar a seguinte saída:

      Connected to master-hdm-cn-hangzhou.aliyuncs.com.  Escape character is '^]'.

      A conexão com o servidor do DAS foi bem-sucedida. Se o DBGateway ainda não iniciar, consulte as seções anteriores e analise o log do DBGateway para investigar mais a fundo.

  • Solução de problemas em tempo de execução

    • Falha na autenticação ou permissões insuficientes

      • Certifique-se de que a conta autorizada possui as permissões necessárias. Os exemplos a seguir utilizam uma conta autorizada chamada das_test.

        • MySQL

          CREATE USER 'das_test'@'%' IDENTIFIED BY 'password';
          GRANT SHOW DATABASES, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'das_test'@'%';
          GRANT SELECT ON *.*  TO 'das_test'@'%';
        • PostgreSQL

          CREATE USER das_test PASSWORD 'password';
          GRANT SELECT ON ALL TABLES IN SCHEMA PUBLIC TO das_test;
          /* Optional. This permission is required to collect slow query logs and SQL statements. */ 
          ALTER USER das_test WITH SUPERUSER;
        • MongoDB

          use admin;
          db.createUser({user:'das_test',pwd:'password',roles:[{role:'readAnyDatabase', db:'admin'}, {role:'clusterMonitor', db:'admin'}, {role: 'hostManager', db: 'admin'}]})

          Caso receba o erro (Unauthorized) not authorized on admin to execute command, conceda as seguintes permissões à conta autorizada:

          db.grantRolesToUser("das_test", [{db: "local", role: "dbAdmin"},{db: "config", role: "dbAdmin"},{db: "admin", role: "dbAdminAnyDatabase"}])
        • Redis

          O Redis não possui sistema de contas. Verifique se a senha está correta. Para alterar a senha do Redis, modifique a opção requirepass no arquivo de configuração e reinicie o serviço do Redis. Para mais detalhes, consulte Configuração do Redis.

      • Confirme se a conta e a senha estão corretas. Recomendamos testar as credenciais conectando-se remotamente à instância de banco de dados a partir do servidor do DBGateway.

      • Reinicie o DBGateway e verifique se a autorização da instância ocorreu com sucesso.

      • Atualize o DBGateway para a versão mais recente.

    • Falha de conexão

      Uma falha de conexão ocorre quando o DBGateway não consegue se comunicar com a instância de banco de dados. Investigue as possíveis causas listadas abaixo:

      • Verifique se a instância de banco de dados está operando normalmente.

        Se uma instância de banco de dados (como MySQL, PostgreSQL, MongoDB ou Redis) não estiver ativa, confirme a existência do respectivo processo.

      • Teste a conectividade de rede entre o servidor do DBGateway e a instância de banco de dados (por exemplo, MySQL, PostgreSQL, MongoDB ou Redis). Execute o comando a seguir para confirmar:

        telnet <database_instance_IP_or_domain> <database_instance_port>  

        Exemplo:

        telnet 192.168.XX.XX 3306
        • Se o comando retornar a mensagem abaixo, a conexão de rede está normal. Consulte o log do DBGateway para investigar mais detalhadamente.

          Connected to 192.168.XX.XX
          Escape character is '^]'.
        • Caso a mensagem acima não apareça, há um problema de conectividade de rede. Geralmente, isso resulta de isolamento de rede entre servidores, configurações de roteamento, firewall ou instância de banco de dados configurada para recusar conexões remotas.

    • Problemas de monitoramento

      • Verifique o status de execução do DBGateway.

      • Reinicie o DBGateway e veja se o monitoramento é retomado.

      • Atualize o DBGateway para a versão mais recente.

    • Status travado em Authorized. Verifying

      Após uma autorização bem-sucedida, o status da instância deve mudar para Normal Connection dentro de um a dois minutos. Se o status permanecer como Authorized. Verifying por mais de dois minutos, siga os passos abaixo:

      • Verifique o status de execução do DBGateway.

      • Reinicie o DBGateway e confirme se a instância foi autorizada com sucesso.

      • Atualize o DBGateway para a versão mais recente.