Unknown collation: utf8mb4 unicode ci

De Vulgum Techus
Version du 21 janvier 2020 à 13:25 par Admin2 (discuter | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : Navigation, rechercher
Lien court vers cette page : https://vt.cx/Ucuu
QR code vers cette page : https://vt.cx/.qr

Présentation

Ce problème se rencontre lors de l'import de tables SQL via MySQL comme expliqué à Importer une base de données sous MySQL. Ceci vient du jeu de collation (tri sur caractères spécifiques) qui diffère d'une version]] de MySQL à une autre. Ainsi le mode utf8mb4 qui a été ajouté au MySQL 5.5.3, rentre en conflit avec le mode utf8 de versions plus anciennes. Corriger ceci peut se faire de plusieurs manières dont les plus simples sont ici envisagées. La première part d'un dump déjà existant et la seconde se propose de paramétrer la création d'un dump pour que ce problème de compatibilité ne se pose plus.

Procédure

Méthode 1 - Correction du dump

  • Éditer le dump SQL avec un éditeur texte
  • Faire un cherche/remplace (search/replace) de utf8mb4 par utf8 dans tous le dump afin que toutes les occurrences utf8mb4_unicode_ci deviennent utf8_unicode_ci
  • Sauvegarder et refaire l'import comme expliqué à Importer une base de données sous MySQL
  • Pour un import via PHPMyAdmin changer la collation par :
    • Cliquer sur Operation
    • Choisir Collation
    • Mettre Utf8

Méthode 2 - Paramétrage du dump

  • Dans PHPMyAdmin, choisir Export
  • Choisir Personnalisée - afficher toutes les options possibles dans Méthode d'exportation
  • Au niveau de Options spécifiques au format : mettre MYSQL40 dans le champs affecté à Maximiser la compatibilité avec un système de base de données ou un ancien serveur MySQL
  • Cliquer sur Exécuter pour lancer la sauvegarde

Liens utiles

  • dev.mysql.com Character Sets and Collations That MySQL Supports

Articles Vulgum Techus

Commentaires

blog comments powered by Disqus