1 votes

Le journal des requêtes MySQL n'est pas purgé

J'ai activé le journal des requêtes MySQL pour vérifier quelles requêtes sont exécutées par notre application à un certain intervalle de temps.

Je voulais que les journaux soient rafraîchis pendant 3 jours une fois, j'avais donc activé l'option Expiry Log days comme 3 jours.

Mais quand j'ai vu le fichier journal, le journal était là depuis la date d'activation du journal des requêtes, soit plus d'une semaine.

En raison de cela, le fichier journal a augmenté à plus de 2 Go, ce qui n'a pas permis d'obtenir des informations.

Existe-t-il une option à activer pour que le fichier journal des requêtes soit rafraîchi/épuré après quelques jours ?

J'utilise un serveur MySQL 5.0.24.

1voto

Adam Points 11

expire_logs_days est responsable de la rotation des journaux binaires uniquement.

Vous devrez peut-être consulter le journal des erreurs vous-même.

Essayez de faire ceci (Exemple : /var/log/mysqld.log est le journal des erreurs)

Etape 01) Créez un script pour copier le journal des erreurs et le compresser, en le nommant par date et heure (appelez le script /root/rotate_mysqld_log.sh)

cd /var/log
DT=`date +"%Y%m%d_%H%M%S"`
BACKUP_ERROR_LOG=mysqld_${DT}.log.gz
cat mysqld.log | gzip > ${BACKUP_ERROR_LOG}
echo -n > mysqld.log

Etape 02) rendre /root/rotate_mysqld_log.sh exécutable

chmod +x /root/rotate_mysqld_log.sh

Etape 03) Ajouter le script à la crontab (rotation à minuit)

0 0 * * * /root/rotate_mysqld_log.sh

Essayez-le ! !!

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X