Maison > base de données > tutoriel mysql > Comment débloquer des tables MySQL verrouillées sans redémarrer le serveur ?

Comment débloquer des tables MySQL verrouillées sans redémarrer le serveur ?

Patricia Arquette
Libérer: 2025-01-18 13:21:10
original
843 Les gens l'ont consulté

How to Unlock Locked MySQL Tables Without Restarting the Server?

Résoudre les verrous de table MySQL sans redémarrage du serveur

L'erreur « Délai d'attente de verrouillage dépassé ; essayez de redémarrer la transaction » est souvent interprétée à tort comme nécessitant un redémarrage du serveur. Cependant, ce problème de verrouillage peut survenir même sans transactions explicites. Examinons la cause profonde et proposons une solution pour libérer les tables concernées.

L'erreur indique un verrou empêchant une instruction MySQL UPDATE. Même sans lancer de transaction, MySQL peut conserver des verrous en raison de transactions implicites ou de processus en arrière-plan.

Pour résoudre ce problème, une méthode directe (bien que potentiellement risquée) consiste à déverrouiller la table de force :

  1. Connexion MySQL :
<code class="language-sql">mysql -u your_user -p</code>
Copier après la connexion
  1. Identifier les tables verrouillées :
<code class="language-sql">mysql> show open tables where in_use > 0;</code>
Copier après la connexion

Cela affiche les tables actuellement verrouillées.

  1. Examiner les processus actifs :
<code class="language-sql">mysql> show processlist;</code>
Copier après la connexion

Cela montre les processus actifs. Identifiez le(s) processus verrouillant la(les) table(s) cible(s).

  1. Terminer le processus :
<code class="language-sql">mysql> kill <process_id>;</code>
Copier après la connexion

Remplacez <process_id> par l'ID du processus de verrouillage.

Cela déverrouille de force les tables, permettant l'instruction UPDATE. Surtout, cette méthode comporte un risque de corruption des données et ne devrait être qu'une solution temporaire tout en résolvant le problème d'application sous-jacent.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal