In breve: MySQL Error 1206 lock table size — indica che la transazione richiede più lock di quelli sostenibili dalla memoria o dalla struttura disponibile.
Indice dei contenuti
MySQL Error 1206 lock table size: significato
Le prime ipotesi da verificare per “MySQL Error 1206 lock table size” sono transazione lunga non chiusa; query che aggiorna molte righe senza indice efficace.

Sintomi e cause probabili
Sintomi da verificare
- Il messaggio “MySQL Error 1206 lock table size” compare durante un’operazione ripetibile.
- La funzione coinvolta in MySQL e MariaDB non raggiunge il risultato previsto.
- Il log dell’area MySQL e MariaDB registra un evento nello stesso minuto della prova.
- Il comportamento osservato in MySQL e MariaDB cambia in base a utente, rete, file o configurazione.
Cause probabili
- Transazione lunga non chiusa
- Query che aggiorna molte righe senza indice efficace
- Transazioni che acquisiscono lock in ordine differente
- Processo in attesa di una risorsa applicativa
Diagnosi passo per passo
- Leggere ultimo deadlock e stato InnoDB
- Identificare sessioni e transazioni aperte
- Analizzare execution plan e indici
- Correlare query con job e richieste applicative
- Misurare durata delle transazioni
Log e dati da controllare
- log MySQL o MariaDB
- phpMyAdmin o client SQL
- error_log dell’applicazione chiamante
Correzioni sicure
- Ridurre durata e ampiezza delle transazioni
- Aggiungere indici verificati dal piano di esecuzione
- Acquisire risorse in ordine coerente
- Implementare retry limitato per deadlock
- Non aumentare il timeout senza rimuovere la causa

Verifica finale
- La query termina con il risultato previsto
- Schema e vincoli restano coerenti
- Non compaiono nuovi warning o lock
- L’applicazione legge e scrive i dati correttamente
Errori da evitare
- Non disattivare globalmente WAF, ModSecurity, antispam o verifica TLS per aggirare il sintomo
- Non impostare permessi 777 e non cambiare proprietari in modo ricorsivo senza conoscere la struttura dell’account
- Non cancellare database, chiavi Redis, cache o file di sistema senza backup e senza aver identificato l’oggetto coinvolto
- Non ripetere pagamenti, import o webhook reali finché non hai verificato l’idempotenza
Guide Xlogic correlate
- MySQL Error 1317 Query execution was interrupted
- MySQL Error 1213: Deadlock found
- MySQL Error 1824: failed to open referenced table
Fonti tecniche
Domande frequenti
Che cosa significa “MySQL Error 1206 lock table size”?
MySQL Error 1206 lock table size — indica che la transazione richiede più lock di quelli sostenibili dalla memoria o dalla struttura disponibile.
Da cosa può dipendere “MySQL Error 1206 lock table size”?
Le cause da verificare per “MySQL Error 1206 lock table size” sono: transazione lunga non chiusa; query che aggiorna molte righe senza indice efficace; transazioni che acquisiscono lock in ordine differente.
Quali controlli eseguire per “MySQL Error 1206 lock table size”?
Per diagnosticare “MySQL Error 1206 lock table size”, controlla nell’ordine: leggere ultimo deadlock e stato InnoDB; identificare sessioni e transazioni aperte; analizzare execution plan e indici. La soluzione è confermata quando la query termina con il risultato previsto; schema e vincoli restano coerenti.