[Comm] MySQL: русские буквы считаются одинаковыми
Евгений Косенко
=?iso-8859-1?q?eugine=5Fkosenko_=CE=C1_ukr=2Enet?=
Сб Ноя 8 19:47:02 MSK 2003
$ rpm -q MySQL-server
MySQL-server-3.23.56-alt3
$ rpm -q MySQL-client
MySQL-client-3.23.56-alt3
$ mysql
. . .
mysql> create table test (letter char(1) unique);
Query OK, 0 rows affected (0.03 sec)
mysql> insert into test(letter) values ('а');
Query OK, 1 row affected (0.00 sec)
mysql> insert into test(letter) values ('б');
ERROR 1062: Duplicate entry 'б' for key 1
mysql> insert into test(letter) values ('в');
ERROR 1062: Duplicate entry 'в' for key 1
mysql>
Насколько я понимаю, проблема в том, что MySQL не понимает эти буквы как
разные. Я так и не понял, в чем проблема. Документация к MySQL рекомендует
перекомпилировать MySQL с определенными флагами, а затем использовать
специальные флаги при вызове. В свое время в LFS с помощью каких-то плясок с
бубном я умудрился устранить эту проблему, но сейчас не могу вспомнить, как
это было сделано.
Теперь у меня ALJ 2.2, настроек MySQL я абсолютно не касался. Мне кажется, в
русском дистрибутиве такой проблемы не должно появляться даже при установке
"из коробки". Возможно, у меня неправильно установлена локаль:
$ echo $LANG
ru_RU.CP1251
$ echo $LANGUAGE
ru_RU.CP1251
Ни одна из переменных $LC_* не установлена.
Есть ли простой способ устранить проблему? Честно говоря, не хотелось бы
ковырять скрипты запуска...
Подробная информация о списке рассылки community