Como agendar a limpeza automática de logs antigos do banco de dados
Oi! Aqui é a Sensei da GeHost 🦉 Hoje vou te ensinar um cuidado de bastidor que faz muita diferença: manter o seu banco de dados enxuto, agendando uma limpeza automática dos registros antigos de "log" (aquelas tabelas que só crescem, guardando histórico de acessos, eventos, tentativas de login do seu sistema, etc.). Sem essa limpeza, o banco vai inchando com o tempo, o que pode deixar o site mais lento e ocupar espaço à toa. Bora resolver isso juntos, com calma?
Antes de tudo: se você não tem familiaridade com comandos de banco de dados (SQL), não tem problema nenhum em pedir pro nosso suporte te ajudar a montar essa rotina com segurança — é exatamente pra isso que estamos aqui. 💙
1. Faça um backup antes de mexer em qualquer coisa
Regra de ouro: nunca apague dados de um banco sem ter um backup fresquinho na manga. No cPanel, vá até a área de Backup e gere um backup completo (ou pelo menos do banco de dados). Assim, se algo sair diferente do esperado, dá pra restaurar tranquilamente.
2. Entre no cPanel e encontre seu banco
Acesse o cPanel da sua hospedagem com seu usuário e senha.
Dentro do painel, procure a seção Bancos de Dados MySQL — é lá que você vê os bancos vinculados ao seu site e consegue gerenciar as tabelas (inclusive as de log, se o seu sistema/site tiver uma).
3. Identifique a tabela de logs que está crescendo
Nem todo site tem uma tabela de "log" — isso normalmente existe quando seu sistema (loja, CMS, aplicação própria) grava um histórico de eventos no banco (ex.: tabelas chamadas algo como log, logs, historico, access_log). Pelo phpMyAdmin (acessível a partir da tela de Bancos de Dados MySQL), você consegue ver o tamanho de cada tabela e confirmar qual delas está acumulando registros antigos.
- Se não souber identificar qual tabela é essa, chame o suporte — a gente te ajuda a localizar.
- Anote o nome exato da tabela e, se possível, um campo de data (tipo "criado_em" ou "data") que indique quando cada registro foi gerado. É esse campo que vai definir o que é "antigo".
4. Agende a limpeza automática com um Cron Job
O cPanel tem uma ferramenta chamada Cron Jobs, que serve exatamente pra rodar uma tarefa automaticamente, no intervalo que você escolher (por exemplo, uma vez por dia, de madrugada). É com ela que você agenda a limpeza sem precisar lembrar de fazer isso manualmente.
- No cPanel, procure a ferramenta Cron Jobs.
- Escolha a frequência da limpeza (ex.: diariamente, semanalmente — o que fizer mais sentido pro volume de registros do seu sistema).
- No campo de comando, você vai colocar a instrução que apaga apenas os registros mais antigos que um período definido daquela tabela de log (nunca a tabela inteira!). Se você tem acesso a um script/rotina do seu próprio sistema pra isso, aponte o Cron Job pra ele; se preferir um comando direto no banco, recomendamos montar isso com o suporte, pra garantir que o filtro de data está certinho antes de qualquer exclusão automática rodar sozinha.
- Salve o agendamento.
Dica da Sensei: comece rodando o comando de limpeza manualmente uma vez (com backup feito) pra conferir se ele apaga só o que deveria. Só depois de validar, deixe o Cron Job rodando sozinho.
5. Confirme que está funcionando
Depois de alguns dias com o Cron Job ativo, volte ao phpMyAdmin e veja se o tamanho da tabela de log parou de crescer indefinidamente e se os registros antigos realmente sumiram, mantendo só o período recente que você definiu.
Se em algum momento a tabela continuar crescendo do mesmo jeito, ou se você não tiver certeza se o comando está seguro, chama a gente no suporte pelo painel.gehost.com.br — a gente te ajuda a revisar o agendamento com calma.
Prontinho! Com esse cuidado agendado, seu banco de dados fica sempre mais leve e organizado, sem você precisar ficar de olho toda semana. Qualquer dúvida, é só chamar — combinado? 😊
Com carinho, Sensei da GeHost 🎓