BASE DE CONNAISSANCES

Erreur "[MySQL][ODBC 5.3(w) Driver]Unknown character set: 'utf8mb4" lors de la connexion à MySQL


Date de publication : 30 Oct 2019
Date de dernière modification : 06 Mar 2023

Problème

Lors de la connexion à MySQL, soit via Tableau Desktop ou Tableau Server, soit via un test DNS, le pilote MySQL Unicode renvoie l'erreur :

"[MySQL][ODBC 5.3(w) Driver]Unknown character set: 'utf8mb4'". (Jeu de caractères inconnu : 'utf8mb4')


Informations supplémentaires concernant ce scénario :

  • Cette erreur se produit uniquement lors de la connexion au serveur MySQL pré-version 5.5.3.
  • Cette erreur se produit uniquement avec les pilotes MySQL ODBC version 5.3.11 ou ultérieure.

Environnement

  • Tableau Desktop
  • Tableau Server
  • MySQL

Résolution

Pour éviter cette erreur, utilisez l'une des solutions suivantes :
Option 1
Rétrogradez à une version antérieure du pilote MySQL (pré-5.3.11).
Option 2
Mettez à niveau votre serveur MySQL à la version 5.5.3 ou ultérieure, où le jeu de caractères UTF8MB4 est pris en charge.
Option 3
Utilisez le connecteur ODBC générique de Tableau, et connectez-vous à l'aide du pilote MySQL ANSI au lieu du pilote par défaut Unicode (notez que les connexions utilisant le connecteur ODBC générique ne sont pas prises en charge et peuvent entraîner des fonctionnalités limitées). 

Cause

À compter de la version 5.3.11, le pilote MySQL ODBC s'est mis à utiliser le jeu de caractères UTF8MB4 au lieu du jeu UTF8. Par contre, la prise en charge du jeu de caractères UTF8MB4 n'a été ajoutée au serveur MySQL qu'à compter de la version 5.5.3. La connexion à une version de serveur antérieure entraînera donc l'erreur susmentionnée.

Informations supplémentaires

Pour plus d'informations sur cette modification, consultez la documentation MySQL suivante :
  • Notes de version du connecteur MySQL/ODBC 5.3.11 :
    • « La version Unicode utilise désormais le jeu de caractères UTF8MB4 comme jeu de caractères de transport entre le serveur MySQL et le pilote ODBC. »
  • Notes de version du serveur MySQL 5.5.3 :
    • « Le jeu de caractères utf8mb4 a été ajouté. Il est similaire au jeu utf8, mais son codage permet jusqu'à 4 octets par caractère afin de prendre en charge des caractères supplémentaires. »
Cet article vous a-t-il permis de résoudre le problème ?