10.13 Problèmes liés au verrouillage

Le système de verrouillage des tables de MySQL empêche les blocages.

MySQL utilise le verrouillage de table pour réaliser des verrous à très haute vitesse. Cela remplace avantageusement le verrouillage de colonne ou de ligne. Pour les grandes tables, le verrouillage est BEAUCOUP plus rapide que le verrouillage de ligne. Cependant, il y a quelques limitations.

Le verrouillage de table permet à plusieurs threads de lire une table en même temps, mais limite l'écriture de cette table à un seul thread, qui doit s'assurer de l'accès exclusif à la table. Durant la modification, les autres threads devront attendre.

Etant donné que les modifications sont considérés comme plus importantes que les SELECT, toutes les commandes de modifications ont une priorité supérieure aux commandes de selections. Cela permet de ne pas bloquer les modifications si une table est sujette à un fort trafic en lecture.

Le problème principal avec ceci est décrit avec la situation suivante :@:

Les solutions envisageables sont :@: