A.2.15 Ошибка Can't initialize character set xxx
Получение ошибки наподобие:
MySQL Connection Failed: Can't initialize character set xxx
Означает, что имеется одна из следующих ситуаций:
-
Кодировка является многобайтовой и не поддерживается клиентом. В этом
случае необходимо перекомпилировать клиент с
--with-charset=xxx
или с
--with-extra-charsets=xxx
(see section 2.3.3 Типичные опции configure
).
Весь стандартный бинарный код MySQL откомпилирован с
--with-extra-character-sets=complex
, что обеспечивает поддержку всех
многобайтовых кодировок (see section 4.6.1 Набор символов, применяющийся для записи данных и сортировки).
-
Кодировка является простой кодировкой, не скомпилированной в
mysqld
, и
файлы определения кодировки находятся не там, где рассчитывает их
найти клиент. В этом случае необходимо:
-
Перекомпилировать клиент с поддержкой этой кодировки (see section 2.3.3 Типичные опции
configure
).
-
Указать клиенту, где расположены файлы определения кодировки. Для многих
клиентов это можно сделать с помощью опции
--character-sets-dir=path-to-charset-dir
.
-
Скопировать файлы определения кодировки туда, где, по мнению клиента,
они должны находиться.