ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] mysql sorting order problem
@ 2003-10-15  6:42 Peter V. Saveliev
  2003-10-15  6:58 ` Evgeny Yugov
  0 siblings, 1 reply; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-15  6:42 UTC (permalink / raw)
  To: sisyphus

...

Есть проблемы с сортировкой в mysql:

[root@mysql mysql]# rpm -qa | grep -i mysql-server
MySQL-server-4.0.15-alt2

[root@mysql mysql]# my_print_defaults mysqld
--default-character-set=win1251
--chroot=/var/lib/mysql
--datadir=/db
--bdb-logdir=/log
--pid-file=/mysqld.pid
--skip-locking
--socket=/mysql.sock
--tmpdir=/tmp
--user=mysql
--set-variable=max_connections=300


Запрос:
select * from a.b order by c;

В колонке "c" находятся данные в cp1251. Сортировка, как понятно,
сортирует "как-то странно". Конкретнее, пример у клиента:

http://www.finnews.ru/test.php

В настройках сервера указывал как cp1251, так и win1251. Ни character
set, ни collate в запросах не работают вообще. То есть, говорят ошибку
синтаксиса (все запросы брал из документации).

В общем-то, проблема даже не в сортировке :) Порвут меня сегодня, как
тузики тряпку. Хелп.

-- 
 10:37:04  up 33 days, 21:53,  2 users,  load average: 0.60, 0.59, 0.58

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  6:42 [sisyphus] mysql sorting order problem Peter V. Saveliev
@ 2003-10-15  6:58 ` Evgeny Yugov
  2003-10-15  8:06   ` Peter V. Saveliev
  0 siblings, 1 reply; 14+ messages in thread
From: Evgeny Yugov @ 2003-10-15  6:58 UTC (permalink / raw)
  To: Peter V. Saveliev

Здравствуйте Peter,

Wednesday, October 15, 2003, 1:42:48 PM, you wrote:

PVS> Запрос:
PVS> select * from a.b order by c;

PVS> В колонке "c" находятся данные в cp1251. Сортировка, как понятно,
PVS> сортирует "как-то странно". Конкретнее, пример у клиента:

PVS> http://www.finnews.ru/test.php

PVS> В настройках сервера указывал как cp1251, так и win1251. Ни character
PVS> set, ни collate в запросах не работают вообще. То есть, говорят ошибку
PVS> синтаксиса (все запросы брал из документации).

PVS> В общем-то, проблема даже не в сортировке :) Порвут меня сегодня, как
PVS> тузики тряпку. Хелп.

Стрянная байда... для чистоты експеримента, можете записывать данные в
базу маленькими буквами? И показать то что получилось...


-- 
With Best regards,
Evgeny Yugov,
MTS, programmer of Advanced Technologies Departament.
Registered Linux User #316667
mailto:yugov@scs-900.ru

Origin: Сpеди слепых одноглазый - коpоль...



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  6:58 ` Evgeny Yugov
@ 2003-10-15  8:06   ` Peter V. Saveliev
  2003-10-15  8:14     ` Re[2]: " Evgeny Yugov
  0 siblings, 1 reply; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-15  8:06 UTC (permalink / raw)
  To: Evgeny Yugov, sisyphus

On Wed, 15 Oct 2003 13:58:10 +0700
Evgeny Yugov <yugov@scs-900.ru> wrote:

<skip /> 
> Стрянная байда... для чистоты експеримента, можете записывать данные в
> базу маленькими буквами? И показать то что получилось...
<skip />

[peet@mysql peet]$ cat test.sql 
insert into peet.test values (1,"азбука");
insert into peet.test values (2,"арбуз");
insert into peet.test values (3,"балалай");
insert into peet.test values (4,"колобок");
[peet@mysql peet]$ cat test.sql | mysql -p
Enter password: 
[peet@mysql peet]$ echo "select * from peet.test order by text" | mysql -p
Enter password: 
id	text
3	балалай
2	арбуз
1	азбука
4	колобок
[peet@mysql peet]$ echo "delete from peet.test" | mysql -p
Enter password: 
[peet@mysql peet]$ cat test.sql | iconv -f KOI8-R -t CP1251 >test-win.sql 
[peet@mysql peet]$ cat test-win.sql | mysql -p
Enter password: 
[peet@mysql peet]$ echo "select * from peet.test order by text" | mysql -p
Enter password: 
id	text
3	АЮКЮКЮИ
1	ЮГАСЙЮ
2	ЮПАСГ
4	ЙНКНАНЙ
[peet@mysql peet]$ echo "select * from peet.test order by text" | mysql -p | iconv -f CP1251 -t KOI8-R
Enter password: 
id	text
3	балалай
1	азбука
2	арбуз
4	колобок

И там, и там - не то :) Но по-разному.

-- 
 11:58:16  up 33 days, 23:14,  4 users,  load average: 0.39, 0.51, 0.53

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re[2]: [sisyphus] mysql sorting order problem
  2003-10-15  8:06   ` Peter V. Saveliev
@ 2003-10-15  8:14     ` Evgeny Yugov
  2003-10-15  8:29       ` Peter V. Saveliev
  0 siblings, 1 reply; 14+ messages in thread
From: Evgeny Yugov @ 2003-10-15  8:14 UTC (permalink / raw)
  To: Peter V. Saveliev

Здравствуйте Peter,

Wednesday, October 15, 2003, 3:06:37 PM, you wrote:

PVS> On Wed, 15 Oct 2003 13:58:10 +0700
PVS> Evgeny Yugov <yugov@scs-900.ru> wrote:

PVS> <skip /> 
>> Стрянная байда... для чистоты експеримента, можете записывать данные в
>> базу маленькими буквами? И показать то что получилось...
PVS> <skip />

PVS> [peet@mysql peet]$ echo "select * from peet.test order by
PVS> text" | mysql -p | iconv -f CP1251 -t KOI8-R
PVS> Enter password: 
PVS> id	text
PVS> 3	балалай
PVS> 1	азбука
PVS> 2	арбуз
PVS> 4	колобок

PVS> И там, и там - не то :) Но по-разному.
Хм, а тип поля какой?
Что говорят про этот тип и сортировку в кирилице, в документации?

PS Что-то подобное пролетало и с PostgreSQL, но с последним(версия
7.2.1 с ALM 2.2) у меня нет проблем... база в koi8-r.

-- 
With Best regards,
Evgeny Yugov,
MTS, programmer of Advanced Technologies Departament.
Registered Linux User #316667
mailto:yugov@scs-900.ru

Origin: Курить вредно, пить противно, а умирать здоровым - жалко.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:14     ` Re[2]: " Evgeny Yugov
@ 2003-10-15  8:29       ` Peter V. Saveliev
  2003-10-15  8:43         ` Re[2]: " Evgeny Yugov
                           ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-15  8:29 UTC (permalink / raw)
  To: Evgeny Yugov, sisyphus

On Wed, 15 Oct 2003 15:14:22 +0700
Evgeny Yugov <yugov@scs-900.ru> wrote:

<skip />
> Хм, а тип поля какой?
> Что говорят про этот тип и сортировку в кирилице, в документации?
> 
> PS Что-то подобное пролетало и с PostgreSQL, но с последним(версия
> 7.2.1 с ALM 2.2) у меня нет проблем... база в koi8-r.
<skip />

[peet@mysql peet]$ echo "describe peet.test" | mysql -p
Enter password: 
Field	Type	Null	Key	Default	Extra
id	int(11)		PRI	0	
text	text	YES		NULL	

В общем-то, как показал опыт, то же происходит и с varchar, по любому.
Это раз, а два, работало же, базы у нас не первый год живут. в
документации много чего интересного сказано, но там говорится про
collate, а 4.0.15 про такое не знает:

[peet@mysql peet]$ echo "select * from peet.test order by text collate cp1251_general_ci" | mysql -p
Enter password: 
ERROR 1064 at line 1: You have an error in your SQL syntax.  Check the
manual that corresponds to your MySQL server version for the right
syntax to use near 'collate cp1251_general_ci' at line 1

также там говорится про character set:

[peet@mysql peet]$ echo "alter database peet character set cp1251" | mysql -p
Enter password: 
ERROR 1064 at line 1: You have an error in your SQL syntax.  Check the
manual that corresponds to your MySQL server version for the right
syntax to use near 'database peet character set cp1251' at line 1

В общем, есть подозрение, что документация абсолютно иррелевантна версии
4.0.15. Или у меня руки в упор косые, что тоже возможно.

-- 
 12:21:53  up 33 days, 23:38,  7 users,  load average: 0.31, 0.51, 0.51

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re[2]: [sisyphus] mysql sorting order problem
  2003-10-15  8:29       ` Peter V. Saveliev
@ 2003-10-15  8:43         ` Evgeny Yugov
  2003-10-15  8:51           ` Peter V. Saveliev
  2003-10-15 17:02         ` Serge Pavlovsky
  2003-10-16 11:04         ` Sanja Byelkin
  2 siblings, 1 reply; 14+ messages in thread
From: Evgeny Yugov @ 2003-10-15  8:43 UTC (permalink / raw)
  To: Peter V. Saveliev

Здравствуйте Peter,

Wednesday, October 15, 2003, 3:29:07 PM, you wrote:

PVS> [peet@mysql peet]$ echo "describe peet.test" | mysql -p
PVS> Enter password: 
PVS> Field	Type	Null	Key	Default	Extra
PVS> id	int(11)		PRI	0	
PVS> text	text	YES		NULL	

PVS> В общем-то, как показал опыт, то же происходит и с varchar, по любому.
PVS> Это раз, а два, работало же, базы у нас не первый год живут. в
PVS> документации много чего интересного сказано, но там говорится про
PVS> collate, а 4.0.15 про такое не знает:
Хм, индекс есть на поле text?
Что говоритьтся насчет индексов на текстовые поля?
По памяти, в PostgreSQL 6.5.х не индексировались поля более
varchar(255), далее могет какой оптимизатор работает?
Если система по дефолту в koi8-r попробуйте создать базу в этой же
кодировке и там тоже самое проверить...

MySQL не самосборный?
После чего вылезли косяки с сортировкой?

-- 
With Best regards,
Evgeny Yugov,
MTS, programmer of Advanced Technologies Departament.
Registered Linux User #316667
mailto:yugov@scs-900.ru

Origin: Утро - время суток, когда завидуешь безработным.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:43         ` Re[2]: " Evgeny Yugov
@ 2003-10-15  8:51           ` Peter V. Saveliev
  2003-10-15  9:06             ` Re[2]: " Evgeny Yugov
                               ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-15  8:51 UTC (permalink / raw)
  To: Evgeny Yugov, sisyphus

On Wed, 15 Oct 2003 15:43:29 +0700
Evgeny Yugov <yugov@scs-900.ru> wrote:

<skip />
> Хм, индекс есть на поле text?

Нет. Для работы инструкции "order by" индекс не нужен.

> Что говоритьтся насчет индексов на текстовые поля?
> По памяти, в PostgreSQL 6.5.х не индексировались поля более
> varchar(255), далее могет какой оптимизатор работает?

Нет, не работает. Действительно, индексов на text быть не может, что
вполне объяснимо. Once again, я ж не fulltext search делаю, а order.

> Если система по дефолту в koi8-r попробуйте создать базу в этой же
> кодировке и там тоже самое проверить...

Угу. Create database test character set koi8-r... Это не постгрес. В
mysql это, похоже, только в документации.

> MySQL не самосборный?

Упаси Аллах.

> После чего вылезли косяки с сортировкой?
<skip />

dist-upgrade :) Обновил MySQL из Сизифа, бо была экстремально нужна 4я
версия, а не-дистрибутивное предпочитаю не юзать.

-- 
 12:45:45  up 34 days, 2 min, 10 users,  load average: 0.37, 0.46, 0.47

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re[2]: [sisyphus] mysql sorting order problem
  2003-10-15  8:51           ` Peter V. Saveliev
@ 2003-10-15  9:06             ` Evgeny Yugov
  2003-10-15 17:10             ` Serge Pavlovsky
  2003-10-16 22:55             ` Peter V. Saveliev
  2 siblings, 0 replies; 14+ messages in thread
From: Evgeny Yugov @ 2003-10-15  9:06 UTC (permalink / raw)
  To: Peter V. Saveliev

Здравствуйте Peter,

Wednesday, October 15, 2003, 3:51:58 PM, you wrote:

>> Хм, индекс есть на поле text?
PVS> Нет. Для работы инструкции "order by" индекс не нужен.
Черт, прошу прощения, заработался и не о том подумал... :o)

>> Если система по дефолту в koi8-r попробуйте создать базу в этой же
>> кодировке и там тоже самое проверить...
PVS> Угу. Create database test character set koi8-r... Это не постгрес. В
PVS> mysql это, похоже, только в документации.
И так же глючит с сортировкой?

PVS> dist-upgrade :) Обновил MySQL из Сизифа, бо была экстремально нужна 4я
PVS> версия, а не-дистрибутивное предпочитаю не юзать.
Угу, тогда посоветую перечитать changelog от старой _работавшей_
версии, до той что стоит сейчас... тогда может прояснится то что
отсутствует в доке. :o/


-- 
With Best regards,
Evgeny Yugov,
MTS, programmer of Advanced Technologies Departament.
Registered Linux User #316667
mailto:yugov@scs-900.ru

Origin: Все идет хорошо, только мимо...



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:29       ` Peter V. Saveliev
  2003-10-15  8:43         ` Re[2]: " Evgeny Yugov
@ 2003-10-15 17:02         ` Serge Pavlovsky
  2003-10-16 11:04         ` Sanja Byelkin
  2 siblings, 0 replies; 14+ messages in thread
From: Serge Pavlovsky @ 2003-10-15 17:02 UTC (permalink / raw)
  To: Sisyphus

В ?? 15.10.2003, в 11:29, Peter V. Saveliev пишет:
> [peet@mysql peet]$ echo "alter database peet character set cp1251" | mysql -p

alter table ?
-- 
Serge Pavlovsky <pal@interexc.com>



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:51           ` Peter V. Saveliev
  2003-10-15  9:06             ` Re[2]: " Evgeny Yugov
@ 2003-10-15 17:10             ` Serge Pavlovsky
  2003-10-16 22:55             ` Peter V. Saveliev
  2 siblings, 0 replies; 14+ messages in thread
From: Serge Pavlovsky @ 2003-10-15 17:10 UTC (permalink / raw)
  To: Sisyphus

В ?? 15.10.2003, в 11:51, Peter V. Saveliev пишет:
> В mysql это, похоже, только в документации.

скорее у вас документация от другой версии

-- 
Serge Pavlovsky <pal@interexc.com>



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:29       ` Peter V. Saveliev
  2003-10-15  8:43         ` Re[2]: " Evgeny Yugov
  2003-10-15 17:02         ` Serge Pavlovsky
@ 2003-10-16 11:04         ` Sanja Byelkin
  2 siblings, 0 replies; 14+ messages in thread
From: Sanja Byelkin @ 2003-10-16 11:04 UTC (permalink / raw)
  To: sisyphus; +Cc: Evgeny Yugov, Peter V. Saveliev

On Wed, Oct 15, 2003 at 12:29:07PM +0400, Peter V. Saveliev wrote:

[skip]

> В общем, есть подозрение, что документация абсолютно иррелевантна версии
> 4.0.15. Или у меня руки в упор косые, что тоже возможно.

Документация одна на все версии по 4.1 (если не по 5.0) включительно.
Там же должно быть указано к каой версии каждый параметр относится если это
не так укажите пожплуйсто место - поправим.
(collate/Utf8 & Co как раз в 4.1)

2Peter:
Если у час есть повторяемый тест, пожайлуста повесте bugreport на
http://bugs.mysql.com или мне пришлите его. (т.е. создание, заполнение
небольшой базы и неправильный запрос, можно и дамп большой базы залить FTP в
secure)

-- 
Regards,
Alexander


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-15  8:51           ` Peter V. Saveliev
  2003-10-15  9:06             ` Re[2]: " Evgeny Yugov
  2003-10-15 17:10             ` Serge Pavlovsky
@ 2003-10-16 22:55             ` Peter V. Saveliev
  2003-10-17  1:05               ` Peter V. Saveliev
  2 siblings, 1 reply; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-16 22:55 UTC (permalink / raw)
  To: sisyphus

On Wed, 15 Oct 2003 12:51:58 +0400
"Peter V. Saveliev" <peet@eltel.net> wrote:

<skip /> 
> > После чего вылезли косяки с сортировкой?
<skip />

Что интересно, в 4.1 всё заработало нормально.

-- 
 02:52:57  up 35 days, 14:09,  2 users,  load average: 0.88, 0.66, 0.55

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-16 22:55             ` Peter V. Saveliev
@ 2003-10-17  1:05               ` Peter V. Saveliev
  2003-10-17  1:34                 ` Peter V. Saveliev
  0 siblings, 1 reply; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-17  1:05 UTC (permalink / raw)
  To: sisyphus

On Fri, 17 Oct 2003 02:55:05 +0400
"Peter V. Saveliev" <peet@eltel.net> wrote:

<skip /> 
> Что интересно, в 4.1 всё заработало нормально.

Смех, блин, вот только "сквозь слёзы". Вопрос немного не по сизифу,
потому просьба ответить приватом: у кого работает MySQL 4.1 и при этом
используются привилегии на show databases? И как, нормально? А у меня
вот так:

[peet@mysql peet]$ echo "select Show_db_priv from mysql.user where user='peet'" | mysql -u root -p
Enter password: 
Show_db_priv
N

Надо ли говорить, что юзер "peet" свободно делает show databases? И что
в 3.23 и 4.0.15 это работало нормально? Не могу даже подыскать
достаточно горестного смайлика, соответственно ситуации... Видимо,
придётся срочно откатываться на 3.23. Займусь, пока утро не натупило.

-- 
 04:56:19  up 35 days, 16:12,  2 users,  load average: 0.13, 0.09, 0.18

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [sisyphus] mysql sorting order problem
  2003-10-17  1:05               ` Peter V. Saveliev
@ 2003-10-17  1:34                 ` Peter V. Saveliev
  0 siblings, 0 replies; 14+ messages in thread
From: Peter V. Saveliev @ 2003-10-17  1:34 UTC (permalink / raw)
  To: sisyphus

On Fri, 17 Oct 2003 05:05:29 +0400
"Peter V. Saveliev" <peet@eltel.net> wrote:

<skip /> 
> [peet@mysql peet]$ echo "select Show_db_priv from mysql.user where user='peet'" | mysql -u root -p
> Enter password: 
> Show_db_priv
> N
> 
> Надо ли говорить, что юзер "peet" свободно делает show databases? И что
> в 3.23 и 4.0.15 это работало нормально? Не могу даже подыскать
<skip />

И, наконец, последние поправки к этому безумству. В 4.0.15 также не
работает запрет на show databases, или я что-то совсем не так понял.

Это раз. А два - сортировка не работает только 4.0.15 в сборке от ALT.
Сунул в тот же спек 4.0.15а, отключил все патчи, пошаманил с чрутом - et
voila. Разбираться, какой же это патч гадит, нет уже времени. Viva 3.23.

-- 
 05:31:22  up 35 days, 16:47,  2 users,  load average: 0.28, 0.45, 0.75

++
Sincerely, Peter V. Saveliev

E-mail: peet@eltel.net
Jabber: peet@jabber.ru



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2003-10-17  1:34 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-10-15  6:42 [sisyphus] mysql sorting order problem Peter V. Saveliev
2003-10-15  6:58 ` Evgeny Yugov
2003-10-15  8:06   ` Peter V. Saveliev
2003-10-15  8:14     ` Re[2]: " Evgeny Yugov
2003-10-15  8:29       ` Peter V. Saveliev
2003-10-15  8:43         ` Re[2]: " Evgeny Yugov
2003-10-15  8:51           ` Peter V. Saveliev
2003-10-15  9:06             ` Re[2]: " Evgeny Yugov
2003-10-15 17:10             ` Serge Pavlovsky
2003-10-16 22:55             ` Peter V. Saveliev
2003-10-17  1:05               ` Peter V. Saveliev
2003-10-17  1:34                 ` Peter V. Saveliev
2003-10-15 17:02         ` Serge Pavlovsky
2003-10-16 11:04         ` Sanja Byelkin

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git