Portál AbcLinuxu, 13. května 2024 15:17


Dotaz: mysqlcheck ignoruje nastavení kódování

31.8.2008 11:45 Thunder.m | skóre: 35 | blog: e17
mysqlcheck ignoruje nastavení kódování
Přečteno: 374×
Odpovědět | Admin
Setkal jsem se s takovým podivným problémem, mysqlcheck mi při kontrole databáze vypisuje špatně kódování, ikdyž ho spustím s parametrem:
mysqlcheck -p -v --default-character-set=utf8 jmeno_databaze
Tak stále vypisuje všechno v latinu1, nevíte kde by mohl být problém???
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.8.2008 17:40 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: mysqlcheck ignoruje nastavení kódování
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ještě jsem zapoměl uvést proč to sem vlastně píšu, ne že bych si výstup pomocí iconv neuměl převést, ale trápí mě jedna věc, v Debianu mi při každém spuštění mysqld provádí mysqlcheck kontrolu celé databáze, ta však obsahuje tabulky s utf názvy (normální české názvy včetně mezer), při této kontrole to u některých tabulek hlasí že neexistují, přitom vše funguje správně, vsadím boty na to že je to problém v kódování :)
31.8.2008 18:04 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: mysqlcheck ignoruje nastavení kódování
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak si odpovím sám a tímto považujte otázku za vyřešenou :)

V my.cnf jsem nestačilo pouze toto (mimo dalších nastavení):
[client]
default-character-set = utf8

[mysqld]
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci
Ale bylo potřeba ještě do části mysqld přidat další řádek pro tupé klienty :)
[mysqld]
skip-character-set-client-handshake
Poté mysqlcheck začal fungovat správně, přitom je velmi zajímavé že jsem mu kódování předával jak z příkazové řádku, tak z my.cnf a dokonce výpis použitých parametrů vypisoval vše správně, ale stejně to nebylo utf8.
--port=3306 --socket=/var/run/mysqld/mysqld.sock --default-character-set=utf8
Ještě pro info verze mysql:
mysql  Ver 14.12 Distrib 5.0.51a, for debian-linux-gnu (i486) using readline 5.2
Ale dělala mi to i verze:
mysql  Ver 14.12 Distrib 5.0.32, for pc-linux-gnu (i486) using readline 5.2

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.