Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

Attention, une faille de sécurité dans bash a récemment été rapportée, il est recommandé de mettre à jour son système (plus de détails)

#1 Le 12/05/2006, à 13:06

jaywax

Limiter la consommation de mémoire de Mysqld

Salut à tous !

J'ai un serveur web (ok c'est pas de l'ubuntu, mais ca sera bientôt une sarge tongue) en prod au boulot qui plante ces derniers temps (plus aucun accés possible même ssh, pourtant il ping le bougre) :

[root@wka001 log]# more messages | grep mysqld
May 11 11:54:49 wka001 kernel: Out of Memory: Killed process 15574 (mysqld-max).
May 11 11:54:49 wka001 kernel: Out of Memory: Killed process 15576 (mysqld-max).
May 11 11:54:49 wka001 kernel: Out of Memory: Killed process 15577 (mysqld-max).
........
May 11 11:54:49 wka001 kernel: Out of Memory: Killed process 26976 (mysqld-max).
May 11 11:54:49 wka001 kernel: Out of Memory: Killed process 30669 (mysqld-max).
May 11 11:54:50 wka001 kernel: Out of Memory: Killed process 30709 (mysqld-max).
May 11 11:54:50 wka001 kernel: Out of Memory: Killed process 30726 (mysqld-max).
.......
May 11 11:54:50 wka001 kernel: Out of Memory: Killed process 13003 (mysqld-max).
May 11 11:54:50 wka001 kernel: Out of Memory: Killed process 13005 (mysqld-max).
......
May 11 13:24:45 wka001 kernel: Out of Memory: Killed process 15744 (httpd).
......
May 11 13:31:20 wka001 kernel: Out of Memory: Killed process 13635 (mysqld-max).
May 11 13:31:20 wka001 kernel: Out of Memory: Killed process 13645 (mysqld-max).
May 11 13:31:20 wka001 kernel: Out of Memory: Killed process 13646 (mysqld-max).
.....
May 11 13:31:20 wka001 kernel: Out of Memory: Killed process 16793 (mysqld-max).
May 11 13:31:20 wka001 kernel: Out of Memory: Killed process 16797 (mysqld-max).

Aprés enquête (Inspecteur Jaywax ! equiped), le coupable fut trouvé :
Un loulou d'un autre service fait tourner sur mysqld une requête récursive de la mort, pompant mes 3Go de Ram + toute la swap, rendant l'accés au serveur impossible (même en ssh).

Ayant cerné plus ou moins le problème, ma question est la suivante :
Peut on limiter la mémoire consommée par un processus (en l'occurence mysqld) ?

J'ai vu la commande ulimit qui permettrait de limiter ce genre de chose mais seulement dans un processus fils du bash (c'est pas trés clair pour moi) !

$ mysql -V
mysql  Ver 12.22 Distrib 4.0.16, for pc-linux (i686)
$ uname -a
Linux 2.4.20-28.7smp #1 SMP (oh le vieux noyau :P)

Merci pour vos réponses !

JaYw@x


O bé nan chui sotte c'est du souedois...

Hors ligne

Haut de page ↑