Недавно мы прошли миграцию с MySQL 5.7 на MySQL 8. В MySQL 5.7 мы просто добавили «useUnicode=true» в строку подключения, чтобы получить функциональные символы Unicode. В MySQL 8 мы продолжаем сталкиваться с исключениями из-за символов юникода. Мы используем Java для серверной части. Пример:
Incorrect string value: '\xC2\x80\xC2\x99t ...' for column 'subject' at row 1
Может кто-нибудь пролить некоторый свет на это?
Да, мы используем Java для серверной части
Пожалуйста, редактировать ваш вопрос, чтобы включить результаты SHOW CREATE TABLE tablename и SELECT * FROM tablename LIMIT 1 либо для фактической таблицы, либо для небольшой таблицы минимальный воспроизводимый пример, которая может воспроизвести проблему.




Попробуйте запрос, приведенный ниже, он обновит поддержку Unicode. Раньше он работал с более ранними версиями MySQL, я не уверен насчет MySQL 8.
SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;
Также проверьте character-set-server = utf8mb4 в my.cnf и useUnicode=true в вашем соединении JDBC.
Я не помню, чтобы когда-либо видел какие-либо настройки
useUnicodeв MySQL. Согласно очень быстрому поиску в Google, это может быть вещью JDBC. Вы используете Java?