Home
Мојата email адреса
Моментално читам...
Каде денес?!?
СлободенСофтвер .MK
Linux.net.mk
Наши блогови
СподелиЗнаење
Багра
Wikipedia
FreshMeat
LinuxToday

Web 2.0:
Mibbit online IRC

Содржина:
OpenOffice
Jabber

Сѐ на блогов е Public Domain, освен ако експлицитно не е наведено поинаку.
Земете македонски Фајрфокс!
[Валиден HTML]
[Валиден CSS]

Jabber статус:

Ај додека сум на техничките теми, на кратко... Во MySQL 4.1 за првпат се појави можноста MySQL да прави разлика меѓу различните charset-ови. Така за секоја база или табела може да се подеси во кој charset се текстуалните полиња. Во оваа верзија MySQL научи и правилно да сортира UTF8 string-ови (што не е едноставно сортирање по бинарна вредност на буквите).

Маната на овој прогрес е дека сега имаме неколку нови параметри за кои треба да се мисли. За жал по default MySQL е подесен да работи во latin1 (демек Шведска тоа го користи), што покасно може да биде проблем кога ќе сфатиме дека UTF-8 соджината ни е складирана во latin1 табели. Проблемот се јавува бидејќи сега и на mysql клиeнтите (mysql-python, php-mysql подршката, mysql shell-от, итн) треба да им се каже со кој charset работат тие, а со кој базата итн..

Да не должам многу, после инсталација на MySQL-4.1 одма ставајте го ова во /etc/my.cnf и све* ќе работи како што треба:
# /etc/my.cnf
[client]
default-character-set = utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_unicode_ci
init_connect='set collation_connection = utf8_unicode_ci;'
* сѐ што сум пробал, горното ја подесува и базата и клиентите (libmysql), така да може да се јави проблем ако клиентите не се на ист компјутер со базата или користат стара верзија на libmysql.

Ниедно упатство не вреди без процедура за проверка на резултатот, така да треба да очекувате вакво нешто:
damjan$ mysql -p test
Enter password: житисе
show variables like 'character%';
| character_set_client            | utf8                                        |
| character_set_connection        | utf8                                        |
| character_set_database          | utf8                                        |
| character_set_results           | utf8                                        |
| character_set_server            | utf8                                        |
| character_set_system            | utf8                                        |
show variables like 'collation%';
| collation_connection            | utf8_unicode_ci                             |
| collation_database              | utf8_unicode_ci                             |
| collation_server                | utf8_unicode_ci 
Горното го правам како user damjan, за root важат некои посебни правила.

Тоа е... понатаму ваљда пак ќе пишам нешто за „пиратството“, очигледно темата бара поголем осврт.

ps.
За решавање на проблеми настанати од погрешно подесен MySQL и слични перверзии, контактирајте ме (во овој редослед) на news, mail листа, ако сте спремни да платите на личен mail, или ако сте плавуша може и на телефон.
[æ]