MySQL и русская кодировка WINDOWS-1251



Сегодня мы рассмотрим, что нужно написать в конфигурационном файле /etc/my.cnf для того, чтобы настроить mysql стандартной сборки на работу с кодировкой utf8 по умолчанию без всякой перекомпиляции.

Рассмотрим пример конфига на основе MySQL 5.x.

В раздел [mysqld] необходимо добавить следующее:

1
2
3
4
5
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
init-connect="SET NAMES utf8"
skip-character-set-client-handshake

Две последние строки принудительно устанавливают кодировку utf8 для всех запросов.

В раздел [mysqldump] достаточно добавить только

1
default-character-set=utf8

Этого достаточно, чтобы MySQL работал с windows-1251 кодировкой по умолчанию.

Если же при импорте базы данных вместо русских букв выдаются иероглифы или знаки вопроса, это значит, что дамп был сделан в кодировке, отличной от utf8. Переделайте дамп в utf8 или перекодируйте его в нужную кодировку с помощью утилит iconv или recode.

Похожие статьи:

  1. Резервное копирование баз MySQL
  2. Развертывание LAMP на Debian/Ubuntu
  3. Интересный mysql запрос

Ответить


[ Ctrl + Enter ]