abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

    Ladislav Hagara | Komentářů: 1
    včera 15:55 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.10. 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 3
    6.10. 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    6.10. 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    6.10. 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    6.10. 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    6.10. 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (18%)
     (16%)
     (16%)
    Celkem 191 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: MySQL zase kódování

    15.10.2010 17:50 Pavel
    MySQL zase kódování
    Přečteno: 294×
    Hoj, mám databázi, kde je tento záznam (zobrazeno přes mysql clienta):
    21916 | 吴        | 分生        | 1          | 瑞安市仙降镇下社村 | 
    
    Ale když DB dumpuju, kódovaní se zmrší:
    (21916,'å�~P´','å�~F�~@| ç�~@~]�
    V té samé tabulce jsou ale záznamy v Češtině se správnou diakritikou, které se vydumpují korektně.

    Je divné, že něco se vydumpuje správně a něco ne. Také je zvláštní, že terminál mi přes mysql clienta záznamy zobrazí správně, ale když si ve vi/mcedit/kate otevřu dump, tak je to špatně.

    Pochází to ze systému, o kterém nic nevím (PHP).

    Verze: MySQL 5.0.32-Debian_7etch12-log

    Tabulka: DEFAULT CHARSET=latin1

    Server variables:
    | character_set_client            | latin1                      | 
    | character_set_connection        | latin1                      | 
    | character_set_database          | latin1                      | 
    | character_set_filesystem        | binary                      | 
    | character_set_results           | latin1                      | 
    | character_set_server            | latin1                      | 
    | character_set_system            | utf8                        | 
    | character_sets_dir              | /usr/share/mysql/charsets/  | 
    | collation_connection            | latin1_swedish_ci           | 
    | collation_database              | latin1_swedish_ci           | 
    | collation_server                | latin1_swedish_ci           |
    
    V my.cnf není o kódování ani zmínka.

    Dump vytvářím takto:
    mysqldump --default-character-set=utf8 --set-charset
    Vyzkoušel jsem i --default-character-set=latin1, nebo též použít recode na soubor s dumpem, ale vše bez výsledku. Otázka je, jak koretkně vydumpovat DB?

    Odpovědi

    15.10.2010 18:24 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Řešili jsme to tady
    mysqldump --default-character-set=binary
    Vyeexportuje tak jak to leží v db, takže lze zjitit co tam vlastně je.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    15.10.2010 20:26 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    A doplním, není problém mít v tabulce data v jiném kódování, než je tabulka(sloupec) nastavena, je to velmi častý jev po přechodu ze 4.x verzí a také u různých, většinou PHP, aplikací, které si správně nenastaví všechny parametry vztahující se ke kódování. Často se to zjistí, až když se DB chce přenést jinam, kde je to jinak nastaveno. Což je ještě dobrá situace, horší je když se něco změní a používá(vkládá) se to dál, to pak máte problém, ale lze to také řešit - pracně a záleží na okolnostech jak úspěšně.
    Dále se může jednat o nesprávně provedený export(dump) a import, nebo kombinace všeho, což je nelepší :).
    Pokud sem přiložíte soubor stvořený pomocí příkazu:
    mysqldump -u uzivatel -p --default-character-set=binary --skip-set-charset databaze tabulka
    lze zjistit jak to tam vlastně je.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2010 12:23 Pavel
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Super, diky za reakci, s binary se to vydumpovalo jako:
    
    (21916,'å<90>´','å<88><86>ç<94><9f>','1','ç<91><9e>å®<89>å¸<82>ä»<99>é<99><8d>é<95><87>ä¸ ...
    
    

    16.10.2010 17:59 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Pravděpodobně z toho lze něco zjistit - ale blbě a ne všechno - psal jsem "přiložit" ne zkopírovat do textu. Jsou třeba nezměněná data, klidně je promažte, ale chtěl jsem vidět dump v nezměněné podobě, tj. i CREATE TABLE syntaxi a vlastní data (třeba jen jeden záznam).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2010 19:28 chrono
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Tá časť å<88><86>ç<94><9f> je reťazec "分生" v kódovaní UTF-8 ktorý sa zobrazuje ako 8859-1 (a to za tým je 瑞安市仙降).
    16.10.2010 19:33 chrono
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Zabudol som napísať, že ak Pavel ten súbor pozerá v inom kódovaní ako 8859-1, tak sú tie údaje zakódované viac krát a bude musieť použiť napr. iconv na odstránenie toho prebytočného kódovania.
    16.10.2010 20:08 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL zase kódování
    Ju, super - nemusí se to už hledat :).
    Nicméně pokud to chce napravit a nebudeme znát jak jsou tabulky nastaveny a bude se to jen přepisovat, tak nezjistíme kde je problém. Pokud dá binární dump včetně CREATE TABLE.. + jeho nastavení, ketré již napsal, lze určit co je špatně a jak to lze spravit.
    Třeba nic, prostě v latin1 nezobrazí rozsypaný čaj :).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.