Сортировка в MySQL
Здравствуйте.
Кто знает, что нужно сделать, чтобы Мускул правильно сортировал по
полям, содержащим русские символы?
← Апрель 2005 → | ||||||
1
|
||||||
5
|
6
|
7
|
||||
27
|
За последние 60 дней ни разу не выходила
Сайт листа:
http://blog.nundesign.com
Открыт:
06-08-2003
Пре-модерация: Да
Адрес для писем в лист: inet.webbuild.webbuilding-list@subscribe.ru
Адрес
модератора: inet.webbuild.webbuilding-owner@subscribe.ru
Здравствуйте.
Кто знает, что нужно сделать, чтобы Мускул правильно сортировал по
полям, содержащим русские символы?
В my.cnf:
default-character-set=cp1251
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Thursday, April 14, 2005 4:49 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Антон.
Облазил всё, не нашёл этого файла. Где он должен лежать?
Или может он как-нибудь по-другому называется?
Какая ОС?
Антон.
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Thursday, April 14, 2005 5:18 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Файл может быть в /etc/
Если его там нет, создайте.
Антон.
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Thursday, April 14, 2005 9:57 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Антон.
Резюме:
в /etc/ создал два файла:
my.cnf и my.conf (на всякий случай)
в них вписал строчку: default-character-set=cp1251
И ничего не изменилось.
Может какой другой etc нужен, не корневой?
У меня ещё есть /usr/local/etc/
Привет, Андрей!
Другого etc точно никакого не надо. Единственно, что может быть, что у
тебя какая-то особая версия MySQL, которая держит настройки где-то в
другом месте. Но в таком случае мы вряд ли чем-то сможем помочь. А ты
как ее вообще устанавливал? И какая у тебя версия MySQL? Может она
вообще не поддерживает региональных кодировок...
Кстати, еще: у меня эта настройка находится в разделе [client], а не
[mysqld], как здесь кто-то говорил. Может в этом проблема?
Пашка
18 апреля 2005 г., 11:43:50, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Пашка.
Версия 4.0.16
Устанавливал не я, а админ, которому вообще ничего не надо. И
разбираться он не хочет. :) У меня прав нету, а у него желания. Я
должен ему сказать конкретно, что нужно сделать. Он сделает, а больше
ничего его не касается.
Ну да это лирика...
Вот на счёт разделов не понял. У меня файл состоит из одной строчки
(которую написал). Нужно её в какие-то разделы вставлять?
Привет, Андрей!
Вообще конечно, в этом случае у тебя довольно мало шансов, что все
получится как надо.... :)
Сделай в файле две строчки:
[client]
default-character-set=cp1251
Пашка
18 апреля 2005 г., 12:06:13, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Пашка.
Сделал, даже ещё перед этим добавил строчку
character-sets-dir=/usr/local/share/mysql/charsets
Перезапустил мускул. Удалил индексы, создал их снова. А всё равно
какая-то фигня происходит.
И когда в майадмине вызываю показать переменные, то получается вот
что:
character set latin1
character sets latin1 dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7
cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr
greek win1250 croat cp1257 latin5
Hello ВАЖНАЯ ИНФОРМАЦИЯ ДЛЯ КУРАТОРОВ GOLDEN STREAM И ДЛЯ ВСЕХ КТО ХОЧЕТ
ЗАРАБОТАТЬ
Это письмо содержит выгодное предложение, от которого Вам будет трудно
отказаться!
Вам предлагается вступить в новый проект под названием
Diamond Rain, который является аналогом Golden Stream со
значительными доработками.
Почему к Вам пришло это письмо? Да потому, что Вы, по нашим сведениям,
уже являетесь куратором в Golden Stream или в другом проекте и внедрить Diamond
Rain в уже имеющуюся у Вас пирамиду не составит никакого труда,
просто предложите участие в проекте Diamond Rain своим клиентам.
Прочитав о плюсах Diamond Rain Ваши клиенты не смогут отказаться от
такого выгодного предложения!
Доход от Diamond Rain у Вас будет значительно больше, чем в Golden
Stream по причине того, что Diamond Rain только что запустился
(24 марта 2005г) и Вы один(а) из первых, кому пришло это письмо, а это
значит, что перед Вами огромное количество потенциальных клиентов,
чего не скажешь о Golden Stream, где ставка делается на только что
подключившихся к интернету пользователей.
Главные отличия Diamond Rain от Golden Stream и других интернет проектов:
Diamond Rain выполнен в стандартном оконном виде и имеет интуитивно
понятный графический интерфейс;
Больше у пользователей не будет путаницы при формировании ключей
клиентам, т.к. теперь нет GS1.exe, GS2.exe, +.. , GS7.exe. В новом
проекте формирование ключей клиентов всех уровней происходит через
DR.exe, а все свои ключи хранятся в одной папке;
В DR повышены цены на ключи программы. Теперь, заплатив 150 руб.
при вступлении, Вы получите значительно большую прибыль в дальнейшем
при том же количестве клиентов;
В программу добавлена восьмая ступень для особо предприимчивых
людей;
Немного советов:
Используйте свою клиентскую сеть любого другого проекта, если она у
Вас имеется, для распространения Diamond Rain, и результат не заставит
себя ждать;
Вам всего лишь нужно ответить на это письмо своим согласием!
Жду Вашего ответа! Не упустите такую возможность, ведь оказаться на
верху пирамиды очень выгодно!
www.newmail.ru -- всегда что-то новое.
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Еще раз повторяю. Для сортировки, эта строчка должна быть в [mysqld].. в
[client] она другое определяет.
Антон.
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Monday, April 18, 2005 1:05 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Антон.
Сделал и там и там.
Читал ещё здесь
http://dev.mysql.com/doc/mysql/ru/character-sets.html
Вроде сделал как там написано - всё равно не работает.
Возможно у тебя на сервере в скрипте, запускающем mysql, стоит
опция, что параметры нужно читать из файла, находящегося по другому
пути. Загляни туда, посмотри, какой командой запускается mysql.
Пашка
18 апреля 2005 г., 16:29:52, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Пашка.
Посмотрел. Всё нормально.
Файл my.cnf из /etc/ нормально подгружается. Только работает та часть,
которая в группе [client]. А всё, что я напишу в группе [mysqld] - не
влияет на настройки. Я уже пробовал отключать одну и другую группу. И
пришёл к этому выводу.
Привет, Андрей!
Все нормально - это значит в скрипте mysqld запускается без всяких
параметров? Потому что то, что ты здесь пишешь:
как раз означает, что когда ты запускаешь mysql (т.е. клиентскую
часть) без параметров, он читает настройки из /etc/my.cnf и слушается
того, что ты напишешь в разделе [client]. А когда запускается демон,
он читает настройки из какого-то другого файла и не слушается того,
что ты напишешь в /etc/my.cnf.
Пашка
18 апреля 2005 г., 22:25:43, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Пашка.
Мне тут мой админ протёр такую тему, что для того, чтобы серверная
часть запустилась с нужной кодировкой, нужно перекомпилить мускул, а
он, типа, этого делать не может, поэтому, говорит, придумывай, как
избавляться сам.
Я не могу с ним спорить, потому что у меня нет против него никаких
аргументов.
Я имею SSH-доступ к серверу, т.е. могу прочитать всё, что угодно, но
менять сам не могу (только в папках сайта). Что можно ему сказать,
чтобы он сделал и это всё вдруг заработало (моя мечта)?
Твой админ ни фига не понимает - можешь его не слушать.
Все же я повторю свой вопрос: что у тебя находится в скрипте, которым
ты запускаешь mysql? Пришли его полностью.
Пашка
18 апреля 2005 г., 22:57:33, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Так ты mysql ни разу не запускал что ли? Спроси у администратора.
Обычно это что-то типа /etc/init.d/mysqld
Пашка
19 апреля 2005 г., 10:32:53, Andrey Yakushev <kordon_webmast***@m*****.ru> wrote:
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Пашка.
Я понимаю, что надоел уже наверно. Но у меня просто нет другого
выхода.
Я сам ничего не запускал. Оно работает на сервере, а я его просто
юзаю. А у админа спрашивать бесполезно: он зациклился на том, что это
можно решить только перекомпилив что-то. И теперь ничего не хочет
слышать. А перекомпилять он будет ещё месяца два. Да я, собственно, и
не верю ему, что другим способом нельзя ничего сделать.
У меня в etc нет такой папки.
У Вас какой дистр? А /etc/rc.d/ есть? Если есть, то mysqld должна быть там
исполняемым файлом.
С уважением, Косарев Дмитрий
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, ecoportal.
Прошу у всех прощения!!!
Всё заработало. А проблема была в том, что из интерфейса phpMyAdmin я
не мог перезапустить мускул (хотя там есть такая команда). Как только
перезапустили (с админом) всё заработало - подхватилось из my.cnf.
Интересно, что изменения в группе [client] подхватывались без полной
перезагрузки мускула.
Ещё раз всем спасибо!!!
А если после каждого соединения с базой переопределять кодировку командой
SET CHARACTER?
С уважением, Косарев Дмитрий
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, ecoportal.
Не решение.
На других серваках, где мои сайты крутятся, всё решено красиво и
правильно. Там админы нормальные сидят. А здесь... Тоже надо что-то
придумать, чтобы всё работало по умолчанию.
Файл должен называться имеено my.cnf. Должен лежать в /etc/.
Эту строчку можно прописать и как в [mysqld], так и в [client].
Но тебе надо именно в [mysqld], так как [client] изменяет параметры для
собственного клиента mysql.
После этого необходимо перезапустить MySQL.
Для проверки потом можно посмотреть, что показывает команда SHOW VARIABLES.
Или запустить в шеле клиень mysql (прямо так и написать mysql).. и в нем
набрать '\s' (без кавычек). Там будет написана кодировка.
С уважением,
руководитель интернет-портала "Библиотека i2R" (www.i2r.ru),
Антон Дрейзин.
hard@i*****.ru
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Monday, April 18, 2005 12:06 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Файл должен называться имеено my.cnf. Должен лежать в /etc/.
Эту строчку можно прописать и как в [mysqld], так и в [client].
Но тебе надо именно в [mysqld], так как [client] изменяет параметры для
собственного клиента mysql.
После этого необходимо перезапустить MySQL.
Для проверки потом можно посмотреть, что показывает команда SHOW VARIABLES.
Или запустить в шеле клиень mysql (прямо так и написать mysql).. и в нем
набрать '\s' (без кавычек). Там будет написана кодировка.
С уважением,
руководитель интернет-портала "Библиотека i2R" (www.i2r.ru),
Антон Дрейзин.
hard@i*****.ru
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Monday, April 18, 2005 12:06 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/
Здравствуйте, Антон.
Сделал.
Сделал.
Здесь всё равно показывает latin1
А здесь пишет так:
Client characterset: cp1251
Server characterset: latin1
Здравствуйте, Andrey,
14 апреля 2005 г. в 17:18 Вы писали:
В винде это my.ini - ищите в c:\windows\ Строчку с кодировкой
вписывайте в секции [mysqld]
Настроить кодировку
Original Message From: "Andrey Yakushev" <kordon_webmast***@m*****.ru>
To: "inet.webbuild.webbuilding (3306800)" <ha***@i*****.ru>
Sent: Thursday, April 14, 2005 4:18 PM
библиотекa сайтостроительства http://www.i2r.ru/static/244/