PHP PDOException: SQLSTATE[HY000] [2019] Не удается инициализировать набор символов utf8mb4

У меня установлен drupal 8 на Centos 6. Вот мой вывод php и mysql -version

Версия сервера: 5.7.9 MySQL Community Server (GPL) PHP 5.6.14 (cli) (построено: 16 октября 2015 г., 08:41:09)

Но я все еще получаю ошибку подключения

PDOException: SQLSTATE[HY000] [2019] Не удается инициализировать набор символов utf8mb4 (путь: /usr/share/mysql/charsets/) в /var/www/m2m/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php в строке 83

У меня также есть эта конфигурация в моей версии OS X Mysql Server: 5.6.27 Homebrew и PHP 5.6.15 (cli) (построено: 31 октября 2015 г., 07:39:39)

и все в порядке.

Есть ли у вас какие-либо идеи? Любая помощь будет оценена


person vaninv    schedule 20.11.2015    source источник
comment
Можешь попробовать SET NAMES 'utf8mb4' ? http://dev.mysql.com/doc/refman/5.7/en/charset-connection.html   -  person pavlovich    schedule 20.11.2015
comment
Войдите в MySQL и запустите show character set like 'utf%'; , вы видите utf8mb4?   -  person Sasha Pachev    schedule 21.11.2015
comment
mysql› показать набор символов, например 'utf%' -> ; +---------+--------------------------------+------ +--------+ | Набор символов | Описание | Сортировка по умолчанию | Макслен | +---------+--------------------------------+------ +--------+ | utf8 | Юникод UTF-8 | utf8_general_ci | 3 | | утф8мб4 | Юникод UTF-8 | utf8mb4_general_ci | 4 | | утф16 | Юникод UTF-16 | utf16_general_ci | 4 | | utf16le | Юникод UTF-16LE | utf16le_general_ci | 4 |   -  person vaninv    schedule 21.11.2015
comment
Джуманджи, я не могу этого сделать, потому что он должен работать из коробки, и он отлично работает на моей OS X   -  person vaninv    schedule 21.11.2015
comment
dev.mysql.com/doc/refman/ 5.7/ru/   -  person hjpotter92    schedule 21.11.2015
comment
a уже установлены все дополнительные кодировки   -  person vaninv    schedule 22.11.2015
comment
Проблема была временно решена путем добавления раздела с определением utf8mb4 в мой файл /usr/share/mysql/charsets/Index.xml.   -  person vaninv    schedule 22.11.2015


Ответы (1)


У меня была такая же проблема на CentOS, все пакеты обновлены. Проблема была с драйвером mysql. Исправлено, выполнив следующее:

yum erase php56w-mysql
yum install php56w-mysqlnd

И перезапуск веб-сервера.

person Heather Gaye    schedule 24.06.2016