Que essayez-vous de faire ici? Les verrous dans MySQL peuvent être un peu déroutants si vous faites des hypothèses sur ce que vous pensez qu'ils font.
- Un verrou de lecture READ permet à la session avec le verrou de lire et aux autres sessions de lire mais pas d'écrire.
- Un verrou d'écriture WRITE permet à la session avec le verrou de lire et d'écrire et aux autres sessions de ne pas avoir accès.
La syntaxe FLUSH TABLES
ne vous permet pas de spécifier une liste de tables ainsi que d'acquérir un verrou. FLUSH TABLES WITH READ LOCK
verrouille toutes les tables. FLUSH TABLES
videra ces tables. Il y a un verrou implicite impliqué dans la vidange des tables car les nouvelles écritures ne peuvent pas aller dans une table pendant qu'elle est vidée, mais ce verrou implicite est libéré dès que le vidage est terminé.
Si vous voulez verrouiller des tables spécifiques avec un verrou d'écriture, `LOCK TABLES WRITE est ce que vous voulez. Vous pouvez fournir une liste de tables séparées par des virgules ici. Si vous voulez verrouiller toutes les tables, vous devrez fournir la liste entière.
`