Bonsoir,
Je me permets de vous demander certains éclaircissements concernant une erreur qui est survenue hier sur ma base de données.
Après un crash général (dont la source n'a pas encore été élucidée) des erreurs ont persisté au niveau de mysql, et plus précisément sur une table, ou le fait de faire un simple insert posait problème :
Des opérations de maintenance diverses (proposées par phpmyadmin) telles que CHECK ou ANALYSE n'ont donné absolument aucun résultat (aucune erreur détectée). J'ai tenté un FLUSH qui doit permettre de mettre à jour le contenu du cache MySQL au niveau des données si j'ai bien compris.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 1062 : Duplicate key or integrity constraint violation message from server: "Duplicate entry 'NULL' for key 4" insert into BASE.`TABLE` (ID, HEURE1, DATE1, HEURE2, DATE2, ID1, ID2, CHAMP1, CHAMP2, CHAMP3) values (42, '19:27:00', '2007-12-11', '19:27:00', '2007-12-11', 10, 10, 'val1', 'val2', 'val3')
Suite à cette manipulation, les inserts ont refonctionné.
J'ai essayé ensuite de combler les vides puisqu'il manquait environ 300 enregistrement avant que la table ne soit réparée. J'ai donc tenté une requête permettant 300 inserts, une fois via phpmyadmin et une fois via mysqlQueryBrowser. J'ai alors obtenu une erreur du style suivant sur les deux clients :
Enfin, en cherchant des infos sur le net, je suis simplement tombé dans un forum ou l'explication donnée par le support technique était le suivant (concernant cette même erreur) :Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 80385 bytes) in /usr/share/phpmyadmin/libraries/sqlparser.lib.php on line 306
Ca me semble assez léger tout ça.Support response: 2007/09/07 10:35
The database server you were on was having a memory allocation problem. We have restarted the mysql daemon on the server and the problem went away. We don’t expect the problem to return.
Ce qui me dérange dans l'affaire, c'est que je n'ai pas pu retrouver la moindre trace de log concernant les requetes d'insertions qui ont pu avoir été faites depuis ce crash, je ne sais pas du tout quel est le risque pour que le problème se reproduise, ni son origine.
Si vous avez des idées, des suggestions sur ce qui aurait pu se produire, elles sont les bienvenues.
En parallèle, j'ai pu voir dans /var/log/daemon.log le log suivant :
... qui ne concerne pas la même table, mais qui a été corrigée via la commande CHECK.Dec 11 14:28:14 localhost mysqld[4226]: 071211 14:28:14 [ERROR] Got error 134 when reading table './basename/table2'
En vous remerciant infiniment pour vos suggestions.
Edit :
Stats mySQL :
Un autre thread a été ouvert contenant les infos de configuration de mysql, ça pourrait aider à trouver une explication ! Encore merci
Partager