MySQL non riesce a combinare le collations di un’espressione. Isola il confronto che fallisce prima di convertire tabelle intere.
Indice dei contenuti
MySQL error 1267 Illegal mix of collations: significato
Le prime ipotesi da verificare per “MySQL error 1267 Illegal mix of collations” sono colonne confrontate con collations diverse; parametro della connessione con collation differente.

Sintomi e cause probabili
Sintomi da verificare
- Il messaggio “MySQL error 1267 Illegal mix of collations” 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
- Colonne confrontate con collations diverse
- Parametro della connessione con collation differente
- Tabella importata da un altro ambiente
- UNION tra espressioni incompatibili
Diagnosi passo per passo
- Leggere la query completa che fallisce
- Controllare charset e collation delle colonne
- Verificare collation_connection
- Isolare il confronto responsabile
- Provare una conversione su copia del database
Log e dati da controllare
- log MySQL o MariaDB
- phpMyAdmin o client SQL
- error_log dell’applicazione chiamante
Correzioni sicure
- Confronta charset e collation di colonne, parametri e connessione.
- Prova una correzione mirata su copia, preservando i caratteri e le regole di confronto richieste.
- Un cambio di collation può modificare uguaglianza, ordinamento e vincoli univoci: controlla questi risultati.
- Pianifica eventuali ALTER TABLE con backup e verifica del carico. Non imporre una collation arbitraria a tutto il database.

Verifica finale
- Confronti, ordinamento e vincoli univoci mantengono il significato atteso.
- Confronta il risultato con la prova iniziale e conserva gli eventuali errori rimasti.
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 1054 Unknown column
- MySQL error 1040 Too many connections
- MySQL error 1146 Table does not exist
Fonti tecniche
Domande frequenti
Che cosa significa “MySQL error 1267 Illegal mix of collations”?
MySQL non riesce a combinare le collations di un’espressione. Isola il confronto che fallisce prima di convertire tabelle intere.
Da cosa può dipendere “MySQL error 1267 Illegal mix of collations”?
Le cause da verificare per “MySQL error 1267 Illegal mix of collations” sono: colonne confrontate con collations diverse; parametro della connessione con collation differente; tabella importata da un altro ambiente.
Quali controlli eseguire per “MySQL error 1267 Illegal mix of collations”?
Confronta charset e collation di colonne, parametri e connessione. Prova una correzione mirata su copia, preservando i caratteri e le regole di confronto richieste. Un cambio di collation può modificare uguaglianza, ordinamento e vincoli univoci: controlla questi risultati. Pianifica eventuali ALTER TABLE con backup e verifica del carico. Non imporre una collation arbitraria a tutto il database.