Aller au contenu

Sujets conseillés

Posté

Bonjour,

Je suis un novice en administration de serveur.

Je possede un serveur dédié:

P4 3 Ghz HT, 1 Go de Ram.

J'ai un load average toujours en dessous de 1.

Par momment, mon load average passe largement au dessus de 1 (plus de 20), a cause de mysqld.

J'ai deja regarde les logs, mais j'ai rien trouvé.

J'ai vérifier les cron, de meme.

Je ne suis pas assez callé pour trouvé la cause du probleme.

Que peu t'il provoquer cette monté de surcharge qui dure jamais plus de 10 mins.

Merci de votre aide.

Posté

Il faut regarder dans les logs de mysql, et plus particulièrement dans les slow_queries.

Tu dois avoir des requêtes joufflues qui font écraser mysql.

Dan

Posté

Mon log mysql des slow_querry est toujours vide.

Voici mon fichier de config my.cnf

[mysqld]
safe-show-database
innodb_data_file_path=ibdata1:10M:autoextend
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
log-slow-queries =/var/log/mysql_slow.log
set-variable = long_query_time = 5

Et voici le chmod du fichier mysql_slow.log:

-rw-r--r-- 1 root root 0 sep 12 22:07 mysql_slow.log

Cordialement.

Posté

Il est vide parce que mysql ne peut rien y écrire. :hypocrite:

Il faut lui donner mysql comme user et comme group

Donc "chown mysql.mysql /var/log/mysql_slow.log"

Ensuite tu relances mysql.

Il est possible que ces montées en charge soient dues à l'ipossibilité d'écrire dans ce fichier.

Dan

<edit: corrigé le chown>

Posté

Voila maintenant les droits sur le fichier:

-rw-r----- 1 mysql mysql 0 sep 12 22:07 mysql_slow.log

J'ai relancer mysql, par contre le fichier est toujours vide, meme apres plusieurs minutes.

Cordialement.

Posté

Je ne sais pas si ta ligne:

set-variable = long_query_time = 5

est correcte avec les espaces autour du second signe =

Ce qui marche chez moi est

set-variable = long_query_time=5

Cela devrait enregistrer dans le fichier mysql_slow.log toutes les requêtes excédant 5 secondes.

Dan

PS: il faudra à nouveau redémarrer mysql ;)

Posté

J'ai tout fait comme indiqué

Voici les droits sur le fichier:

-rw-r----- 1 mysql mysql 0 sep 12 22:07 mysql_slow.log

Ca fais 2 heures que j'ai effectué la modification, toujours aucun changement, j'ai meme mis la valeur a 2.

++

Posté (modifié)
"chmod mysql.mysql /var/log/mysql_slow.log"

C'est pas chmod mais chown

et sur ma debian sarge, le group c'est adm et non pas mysql... ;)

donc chown mysql:adm /var/log/mysql_slow.log ;)

Tu as aussi mytop qui peut t'être utile pour voir quelles sont les requêtes MySQL qui passent sur ton serveur

Voir le bas de ce tutoriel : http://www.destination-linux.org/Monitorer-MySQL.html

Modifié par NiCoS
Posté
C'est pas chmod mais chown

Clair... c'est ce qui arrive quand on ne se relit pas :blush:

J'ai corrigé le post.

Sur Redhat c'est mysql.mysql ... l'important est surtout d'avoir le bon propriétaire de fichier.

Posté

Si cela peut aider ... :blush:

il y a un outil aussi très interressant à utiliser pour contrôler les requêtes sql c'est "mtop"

nous l'utilisons sur nos serveurs et nous permets de voir quasi-immediatement le compte sql qui surcharge et en plus on peut avoir le detail de la requete qui en est la cause.

voici le lien ou l'on trouve ce script : MTOP ;)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...