#1115 - Set di caratteri sconosciuto: 'utf8mb4'

29 giu 2015, 14:47:31
Visualizzazioni: 30.2K
Voti: 0

Quando importo MySQL dal server locale al server web mi viene mostrato questo errore

1115 - Set di caratteri sconosciuto: 'utf8mb4' durante la creazione della tabella wp_comment di WordPress

CREATE TABLE IF NOT EXISTS  `wp_commentmeta` (
//
//
) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 AUTO_INCREMENT =1;
 #1115 - Set di caratteri sconosciuto: 'utf8mb4'

La mia versione di MySQL è

Informazioni versione: 4.0.4, ultima versione stabile: 4.4.10 (versione locale)

Informazioni versione: 4.0.10.7, ultima versione stabile: 4.4.10 (versione server)

Per favore aiutatemi a risolvere questo errore

3
Commenti

Aggiorna il tuo server MySQL (francamente obsoleto) alla versione 5.5.3 (almeno) oppure modifica il file di importazione, sostituendo tutte le occorrenze di utf8mb4 con utf8.

bonger bonger
29 giu 2015 15:16:03

Come crei il tuo file di importazione? Se usi phpMyAdmin, sostituisci la modalità di compatibilità NONE (predefinita) con MYSQL40. Non sarà necessario modificare manualmente il file risultante. Se usi un plugin di backup del database che non supporta le modalità di compatibilità, trova la chiamata al comando mysqldump e aggiungi il parametro --compatible=mysql40.

Frank P. Walentynowicz Frank P. Walentynowicz
30 giu 2015 00:08:51

Da notare che utf8mb4 è stato introdotto per risolvere problemi di sicurezza e aggiungere il supporto per gli emoji

Tom J Nowell Tom J Nowell
26 ott 2015 16:14:40
Tutte le risposte alla domanda 3
0

WordPress non supporta MySQL 4:

Per eseguire WordPress, il tuo host ha bisogno solo di un paio di cose:

MySQL versione 5.0 o superiore (consigliato: MySQL 5.5 o superiore)

https://wordpress.org/about/requirements/

Anche se l'encoding utf8mb4 è una modifica recente e potresti aggirarlo, in generale avrai comunque bisogno di una versione di MySQL compatibile.

16 ago 2015 15:54:27
0

Da stackoverflow.com

La tua versione non supporta quel set di caratteri, credo sia stato introdotto nella 5.5.3. Dovresti aggiornare il tuo mysql alla versione che hai usato per esportare questo file.

L'errore è quindi abbastanza chiaro: hai impostato un certo set di caratteri nel tuo codice, ma la tua versione di mysql non lo supporta, e quindi non lo riconosce.

Secondo https://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html :

utf8mb4 è un superset di utf8

quindi forse c'è una possibilità che tu possa semplicemente usare utf8, chiudere gli occhi e sperare, ma questo dipenderebbe dai tuoi dati, e non te lo consiglierei.

26 ott 2015 15:29:13
0
-3

apri semplicemente il tuo database esportato in un editor di testo e sostituisci tutte le occorrenze di utf8mb4 con utf8, quindi esporta nuovamente. sii attento a scegliere il set di caratteri corretto quando esporti i database.

16 ago 2015 14:38:32