MySQL - Table 'ma_table' a pas été verrouillé avec Lock Tables
J'essaie de charge et de tables via MySQL et obtenez l'erreur suivante?
MySQL a dit: Table 'cms' a pas été verrouillé avec LOCK TABLES
Pourquoi le tableau doivent être Verrouillées? Je n'ai pas vu ça avant? est-il possible de les débloquer? avez-vous encore envie?
OriginalL'auteur Kieran Headley | 2016-04-07
Vous devez vous connecter pour publier un commentaire.
http://dev.mysql.com/doc/refman/5.7/en/lock-tables.html
Syntaxe pour VERROUILLER et DÉVERROUILLER
Par exemple:-
Unlock tables
OriginalL'auteur Naruto
La solution pour moi a été de déverrouiller les tables. Ils avaient été verrouillé par un précédent requêtes qui ont échoué avant d'atteindre le
unlock tables
déclaration.OriginalL'auteur sashoalm
Ou dans une session, vous avez verrouillé l'un tableau, mais souhaitez sélectionner à partir d'une autre table, vous devez le verrouiller ou déverrouiller tous.
Grande réponse. Merci. J'ai essayé de verrouiller la table de db1 et insérer des données à partir de db2. Après l'interrogation de l'INSÉRER DANS db1.SÉLECTIONNEZ * à PARTIR de db2.le tableau que j'ai reçu le message d'erreur au sujet de ne PAS VERROUILLÉ db2.table. Je ne comprenais vraiment pas pourquoi j'ai eu cette erreur. Vous l'avez expliqué, au sujet de plusieurs tables de verrouillage à l'intérieur d'une séance - merci!
OriginalL'auteur Yu Jiaao
L'une des plus importantes lignes dans la base de données MySQL docs relatifs à la "Table 'ma_table' a pas été verrouillé avec LOCK TABLES" le message est comme suit:
", Tandis que les serrures ainsi obtenues sont tenues, la session peut accéder seulement les tables verrouillées"
https://dev.mysql.com/doc/refman/8.0/en/lock-tables.html
Cela signifie que si vous tentez d'accéder n'importe quelle autre table de la base de données tant que le VERROUILLAGE est en place, vous obtiendrez le message d'erreur "Table 'ma_table' a pas été verrouillé avec LOCK TABLES"
La solution est d'appliquer le verrouillage de toutes les tables que vous souhaitez avoir accès pendant le lock de ce genre. "LOCK TABLES table_1 ÉCRIRE, table_2 ÉCRIRE"
Où table_1 est celui que vous voulez vraiment serrure, mais vous souhaitez également l'accès table_2 cours de ce même processus.
Cela a été source de confusion parce que j'ai été verrouillage uniquement table_1 mais le message d'erreur me disait Table table_2' a pas été verrouillé avec LOCK TABLES
M'a fallu un moment pour comprendre pourquoi table_2 a même été impliqué. J'espère que cela aide quelqu'un d'autre avec le même problème.
OriginalL'auteur Cosworth66
J'ai rencontré ce problème:
puis-je lire , ce qui soulève
Table 'table_a' was not locked with Lock Tables
.Après la lecture de la documentation, j'ai corrigé le code de verrouillage :
Ce résoudre le problème pour moi.
LOCK TABLE
il débloque les table(s) vous avait enfermé, le cas échéant.OriginalL'auteur Simin Jie