Banco de dados 3 visualizações

Como agendar a execução automática de uma consulta SQL de manutenção via cron

Ver no WHMCS

Como agendar a execução automática de uma consulta SQL de manutenção via cron

Olá, querido(a) cliente! Seja bem-vindo(a) ao seu Sensei da GeHost — aqui, vamos juntos tornar sua hospedagem mais inteligente, segura e tranquila. Hoje, vamos aprender como agendar uma consulta SQL para rodar automaticamente, como um pequeno zumbi de manutenção que cuida do seu banco de dados sozinho. 😊

Imagine isso: você tem uma tabela de pedidos que precisa ser limpa a cada semana, ou um relatório que deve ser gerado todo dia às 2 da manhã. Em vez de fazer isso manualmente, você configura o cron — um assistente invisível do sistema — para executar essa tarefa sozinho. É como ter um ajudante digital que nunca dorme!

Passo a passo: agendando sua consulta SQL com o cron

  1. Entre no painel do cPanel do seu site. Para isso, acesse painel.gehost.com.br e faça login com seu usuário e senha.

    Tela de login do cPanel com campos de Usuário e Senha
  2. Na tela principal do cPanel, localize e clique na ferramenta chamada “Cron Jobs”. Ela está dentro do grupo “Advanced” — geralmente perto do final da lista.

    Painel inicial do cPanel com a ferramenta Cron Jobs destacada no grupo Advanced
  3. Na tela de Cron Jobs, clique em “Add New Cron Job” (ou “Adicionar novo Cron”).

  4. Agora, vamos configurar o horário. No campo “Common Settings”, escolha uma opção pré-definida, como:

    • “Once per day” — uma vez por dia
    • “Once per week” — uma vez por semana
    • “Once per month” — uma vez por mês

    Se precisar de um horário específico, escolha “Custom” e defina minuto, hora, dia, mês e dia da semana.

  5. Na caixa de texto “Command”, digite o comando que vai rodar sua consulta SQL. Ele deve seguir este formato:

    php /caminho/para/seu/script.php

    💡 Dica sensata: você precisará criar um arquivo PHP (ex: manutencao.php) dentro da pasta public_html do seu site. Esse arquivo conterá o código PHP que conecta ao banco de dados e executa sua consulta SQL.

  6. Exemplo simples de conteúdo para manutencao.php:

    <?php
    // Conexão com o banco de dados (use seus dados reais)
    $host = 'localhost';
    $user = 'seu_usuario_banco';
    $pass = 'sua_senha_banco';
    $dbname = 'seu_banco';
    
    $conn = new mysqli($host, $user, $pass, $dbname);
    
    if ($conn->connect_error) {
        die("Erro na conexão: " . $conn->connect_error);
    }
    
    // Sua consulta SQL de manutenção
    $sql = "DELETE FROM pedidos WHERE data_criacao < '2023-01-01'";
    
    if ($conn->query($sql) === TRUE) {
        echo "Consulta executada com sucesso!";
    } else {
        echo "Erro: " . $conn->error;
    }
    
    $conn->close();
    ?>

    📌 Importante: substitua os dados do banco (usuário, senha, nome) pelos seus reais. Você encontra esses dados no painel do cPanel, na ferramenta “Bancos de Dados MySQL”.

  7. Salve o cron job. No campo “Command”, digite:

    php /home/seu_usuario/public_html/manutencao.php

    Substitua seu_usuario pelo nome real da sua conta no cPanel (você pode ver isso no painel).

  8. Pronto! O cron agora está agendado. Ele rodará de acordo com o horário que você escolheu, executando sua consulta SQL automaticamente.

Como verificar se está funcionando?

Depois de um ciclo (ex: no dia seguinte), acesse o arquivo manutencao.php pelo navegador (ex: seusite.com/manutencao.php). Se aparecer “Consulta executada com sucesso!”, tudo está funcionando. Se não, verifique os erros no log do cron (acessível no painel, em “Cron Jobs” → “Show Log”).

Dicas do Sensei

  • Teste seu script antes de agendar no cron. Execute-o manualmente no navegador para garantir que não há erros.
  • Nunca deixe senhas ou dados sensíveis expostos no código. Use arquivos de configuração separados, se necessário.
  • Evite agendar tarefas muito pesadas no horário de pico. Prefira madrugada, por exemplo.
  • Se precisar, você pode gerar um arquivo de log para registrar o que o cron fez. Basta adicionar > /home/seu_usuario/logs/manutencao.log 2>&1 ao final do comando.

Se tiver dúvidas ou precisar de ajuda com o código, seu Sensei da GeHost está aqui. É só entrar em contato pelo suporte — e lembre-se: 30 dias grátis após a entrega estão à sua disposição.

Com carinho,
Seu Sensei da GeHost 🌿

Precisa de Ajuda?

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