Servidor & DevOps 9 visualizações

Como resolver o erro 'ECONNREFUSED' ao conectar sua aplicação ao banco de dados no VPS

Ver no WHMCS

Como resolver o erro 'ECONNREFUSED' ao conectar sua aplicação ao banco de dados no VPS

Olá, querido(a) desenvolvedor(a)! Se você está lendo isso, provavelmente está enfrentando um erro bem comum no mundo da hospedagem: 'ECONNREFUSED'. Esse erro aparece quando sua aplicação tenta se conectar ao banco de dados, mas o servidor recusa a conexão.

Calma! Não é um desastre. Com alguns passos simples, vamos resolver isso juntos. Sou a Sensei da GeHost, e estou aqui para te guiar com paciência, como se fosse um amigo no seu lado. Vamos lá?

🔍 O que significa "ECONNREFUSED"?

Esse erro quer dizer: "O banco de dados está aqui, mas não está aberto para receber conexões." Pode parecer mágica, mas na verdade é um problema de configuração — e isso é 100% solucionável!

Dica Sensei: Sempre que aparecer "ECONNREFUSED", pense: "O banco está ligado? Está aceitando conexões? O usuário tem permissão?"

🛠️ Passo a passo: Como resolver o erro no VPS da GeHost

  1. Verifique se o banco de dados foi criado corretamente

    Entre no seu painel de controle em painel.gehost.com.br e acesse o menu MySQL Databases (Bancos de Dados MySQL).

    Tela de gerenciamento de bancos de dados MySQL no cPanel

    Confira se o banco de dados que sua aplicação usa está listado. Se não estiver, crie um novo com um nome claro e único.

  2. Verifique se o usuário tem permissão

    Na mesma tela, verifique se o usuário (usuário do banco) foi criado e atribuído ao banco.

    Se não houver um usuário associado ao banco, clique em “Adicionar Usuário” e crie um com uma senha forte.

    Depois, vá até a seção “Atribuir Usuário ao Banco” e garanta que o usuário tenha permissão total (geralmente chamada de “Privilegios Totais” ou “All Privileges”).

  3. Confira o host do banco de dados

    Em muitos casos, o erro acontece porque a aplicação está tentando se conectar a um host incorreto.

    No VPS da GeHost, o host do banco de dados geralmente é localhost ou 127.0.0.1.

    Se sua aplicação está tentando se conectar a um IP externo, como 192.168.1.10 ou um nome de domínio, isso pode causar o erro. Substitua por localhost ou 127.0.0.1 no arquivo de configuração do banco (geralmente config/database.php, .env, ou db.php).

  4. Verifique se o serviço MySQL está ativo

    Se você tem acesso ao terminal do VPS (via SSH), execute este comando:

    sudo systemctl status mysql

    Se o serviço estiver inativo ou parado, você precisará iniciá-lo com:

    sudo systemctl start mysql

    Se o serviço não estiver instalado, entre em contato com o suporte da GeHost — mas isso é raro, pois o MySQL vem instalado em todos os planos com VPS.

  5. Verifique as permissões de firewall

    Em alguns casos, o firewall do VPS bloqueia conexões na porta do banco (normalmente a 3306).

    Se você tem acesso ao terminal, verifique com:

    sudo ufw status

    Se a porta 3306 estiver bloqueada, você pode permiti-la com:

    sudo ufw allow 3306

    Se não tiver certeza, evite alterar o firewall sozinho — peça ajuda ao suporte da GeHost.

  6. Teste a conexão com um script simples

    Crie um arquivo temporário (ex: test_db.php) com o seguinte conteúdo:

    <?php
    $host = 'localhost';
    $dbname = 'seu_banco';
    $user = 'seu_usuario';
    $pass = 'sua_senha';
    
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
        echo "Conexão bem-sucedida!";
    } catch (PDOException $e) {
        echo "Erro: " . $e->getMessage();
    }
    ?>

    Suba esse arquivo para a pasta da sua aplicação e abra no navegador. Se aparecer "Conexão bem-sucedida", o problema está na sua aplicação. Se aparecer erro, volte aos passos anteriores.

💡 Dicas extras do Sensei

  • Use senhas fortes e evite deixar o usuário do banco com senha fácil.
  • Nunca deixe o banco de dados acessível diretamente pela internet — use apenas localhost em aplicações locais ou internas.
  • Se estiver usando um framework (como Laravel, CodeIgniter, etc.), verifique se o arquivo de configuração do banco está com os valores corretos (host, nome, usuário, senha).
  • Se nada funcionar, abrir um ticket no suporte da GeHost com o nome do domínio, o nome do banco e um trecho do erro — e vamos resolver juntos.
Importante: Todos os planos da GeHost incluem suporte técnico 30 dias após a entrega. Se precisar de ajuda, é só entrar em contato pelo painel do cliente.

Se você seguiu todos os passos e ainda assim o erro persiste, não se preocupe. A GeHost está aqui para te ajudar. Basta abrir um chamado no painel — e lembre-se: você não está sozinho.

Com carinho,
Sensei da GeHost
*Grupo: G e Soluções e Eventos LTDA (marca Entexp, entexp.com.br). Dono: Raphael Neves Koga (desde 2015).*

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.