Я пытаюсь установить наборов символов в utf8mb4 и наборов сопоставления в utf8mb4_unicode_ci.На моем сайте эмодзи выглядит хорошо, когда я получаю данные из таблицы с помощью php / mysql select
.Только в phpMyAdmin (4.8.4) я вижу большинство смайликов как один вопрос.
Я пытаюсь это сделать:
Добавить в /etc/my.cnf
:
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
Перезагрузить systemctl restart mariadb
Я использую на своем сайте mysqli_set_charset($con, "utf8mb4");
, <form accept-charset="UTF-8">
и <meta charset="utf-8">
.
Результат SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%'
:
Что я делаю не так?
Я использую mysql версии 5.5.60 (Mariadb).
Редактировать: Возможно, проблема в phpmyadmin (4.8.4).Кажется, что phpMyAdmin все еще использует utf8.Глобальное variabelen установлено в utf8mb4 или utf8mb4_unicode_ci, но я не могу изменить сеанс variabelen:
Я установил в config.inc.php:
В «нормальной» таблице в phpMyAdmin:
А когда я пытаюсь SET NAMES
, все выглядит нормально:
В разделе Общие настройки в phpMyAdmin параметры сортировки соединения с сервером установлены на utf8_unicode_ci
.Я могу выбрать utf8mb4_unicode_ci
, но затем он переключается обратно на utf8_unicode_ci
: (*
И на моем сайте с select
все выглядит нормально: