19 août 2008

Erreur MySQL : Deadlock found when trying to get lock; try restarting transaction.

Deadlock found when trying to get lock; try restarting transaction.

Comment avoir plus d'informations sur cette erreur de MySQL ?

Après de nombreuses recherches sur le net, j'ai trouvé sur le forum de MySQL cette information :

One tool very useful in debugging the deadlock scenarios is SHOW INNODB STATUS; If you run that command after you get a deadlock, it will tell you more information about how the deadlock occured, ie. what statements were waiting on each other and so on.

Je me connecte donc à ma base de données, et j'exécute la commande show innodb status et je remarque que j'avais effectivement deux requêtes bloquées.

C'est visible dans la section :
------------------------
LATEST DETECTED DEADLOCK
------------------------

J'espère que ceci vous aura aider à débloquer vos requêtes en cours.

____________________________________________

Mise à jour de l'article suite au commentaire de Jérôme (que je remercie au passage) :

Utilisez désormais la commande SHOW ENGINE INNODB STATUS

Posté par fatihaelh à 15:25 - MySQL - Commentaires [3] - Permalien [#]

Commentaires

    Hello!

    Posté par Chamsoo, 08 septembre 2008
  • correctif sur la commande à executer

    Bonjour,

    d'abord merci pour le billet.
    Juste pour dire que si la commande s'execute effectivement et fournit pas mal d'infos elle n'est plus celle qu'il faut employer à terme. CF le message d'alerte retourné :
    'SHOW INNODB STATUS' is deprecated; use 'SHOW ENGINE INNODB STATUS' instead

    cordialement
    Jérôme

    Posté par jero, 14 avril 2009
  • Merci pour l'info

    Bonjour Jérôme, je te remercie pour l'info ! Je vais mettre l'article à jour.

    Cordialement,
    Fatiha

    Posté par fatiha, 14 avril 2009

Poster un commentaire