Lors de l'établissement de la connexion à une base de données MySQL, le message d'erreur suivant s'affiche:
Java.sql.SQLException: Unknown initial character set index '255' received from
server. Initial client character set can be forced via the 'characterEncoding'
property.
Lors de la recherche sur Google, j'ai appris que nous devions modifier 2 paramètres dans my.ini ou my.cnf.
J'utilise MySQL version 8.0.11 et il n'a pas ce fichier.
J'ai donc modifié ces paramètres en utilisant les commandes SQL:
S'il vous plaît noter le nom et la durée sont nom de la colonne dans la table.
ALTER TABLE courses MODIFY name VARCHAR(50) COLLATE utf8_unicode_ci;
ALTER TABLE courses MODIFY duration VARCHAR(50) COLLATE utf8_unicode_ci;
ALTER TABLE courses MODIFY name VARCHAR(50) CHARACTER SET utf8;
ALTER TABLE courses MODIFY duration VARCHAR(50) CHARACTER SET utf8;
D'où ma table ressemble à ceci
Après cela, j'ai redémarré le serveur MySQL, mais je reçois toujours l'erreur ci-dessus.
Veuillez noter que je déploie mon application dans Tomcat et exécute un appel API rest qui se connectera à la base de données. Lors de la connexion à la base de données, l'erreur ci-dessus s'affiche.
Utilisation de l'interface MySQLWorkbench:
Cliquez d'abord sur votre connexion ->
Après avoir cliqué dans le fichier d'options
Et modifiez les valeurs de character-set-server et collation-server pour les valeurs ci-dessous:
Assurez-vous de redémarrer le serveur mysql en ouvrant les services et en redémarrant le serveur mysql.
On dirait que vous devez télécharger le dernier connecteur j jar:
Avec la version 8, le jeu de caractères par défaut a changé. Lorsque vous ajoutez votre jeu de caractères à l'URL de connexion, par exemple? Character Encoding = latin1, cela peut fonctionner.
c'est à cause de la version de mysql-connector, i, e. La version d'installation de My-SQL et la version de dépendance ne correspondent pas.
utiliser la même version pour myS
Ajoutez le fichier jar de dépendance du connecteur dans le fichier POM après une vérification croisée avec votre serveur MySQL version 8.0.x et ajoutez cette dépendance qui fonctionnait pour moi