Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?

[es] :: MySQL :: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?

[ Pregleda: 3361 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

v_v
Software developer

Član broj: 5270
Poruke: 157
*.dslaccess.co.uk.



Profil

icon MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?09.01.2008. u 00:00 - pre 198 meseci
Pozdrav

Imamo IPB forum koji smo sa početka, na žalost, stavili na ISO-8859-1 charset. Planiramo da ga vrlo brzo promenimo na UTF8. Testiramo, i uglavnom sve je u redu, ali određena slova nestaju.

Umesto slova Š, š, Ž, ž pojavljuju se znaci pitanja. Ostala latinica, Đ, Č, Ć izlazi OK.

Postoji li način kako u dumpu (tekst sql fajl je oko 120 megabajta) da promenimo da se ova ASCII slova Š-š-Ž-ž promene u UTF8, tako da kada importujemo promenjeni dump, dobijemo bazu u UTF8 na kojoj su sva slova pravilno podešena? Da li postoji neko programče koje skenira kroz tekst fajl i zamenjuje traženi karakter sa određenom zamenom?

Hvala unapred
Humax 5400Z
ToH 3.3 - HoT7.1
 
Odgovor na temu

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2824
*.adsl.ticino.com.

ICQ: 46802502


+49 Profil

icon Re: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?09.01.2008. u 11:21 - pre 198 meseci
.sql fajl je cisti text, mozes koristiti bilo koji editor da uradis replace (pocevsi od Notepada iako njega ne preporucujem).

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
 
Odgovor na temu

v_v
Software developer

Član broj: 5270
Poruke: 157
*.plus.com.



Profil

icon Re: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?09.01.2008. u 11:45 - pre 198 meseci
Pa bi bilo najpouzdanije rešenje, samo je problem veličina fajla: 120-130 megabajta, malo mnogo za kompleksnu operaciju kao što je Replace. Čak i sa nekim boljim editorom kao što je Notepad++ ili PowerGrep.

Znači, voleo bih da vidim postoje li neke druge opcije. Na guglu nađoh ovako:

Citat:
First, create a dump file (use Mysqldump or phpMyAdmin). Then, open the file in Notepad. Do NOT open in Wordpad or Word. Notepad can handle large files not too well, but if you take some time it works.

Then save the file directly after opening it to a new file, and select "Unicode" below the field for the filename.

Then, load the database back up to the server. Make sure you do not upload it as a binary file. Maybe Zip it before uploading. Reload the file into the database using:

mysql --user=root --password databasename file.txt

You will be prompted for the root password. The file will be read into the database "databasename".

Znači samo save as novi fajl u fomatu UTF8 u Notepadu. Problem s ovim je što otvoreno sumnjam da bi Notepad sam zamenio š i ž ASCII karaktere u š i ž UTF8 karaktere pri ovoj radnji.

Dalje, na ovom linku postoji interesantan predlog:
http://www.thescripts.com/forum/thread172947.html

Citat:
You *might* be able to convert dump.sql to unicode.

iconv -f iso8859-1 -t utf-8 < dump.sql > dump-utf-8.sql

If all the bytea chars are appropriately escaped, this may do it.

Znači korišćenje nekog iconv programčeta na linuxu. Opet, nismo sigurni da bi to šljakalo 100%. Doduše, na još jednom sajtu pominju identičan metod:
http://gentoo-wiki.com/TIP_Convert_latin1_to_UTF-8_in_MySQL

Prevashodno, voleo bih da znam je li iko to radio i da li je metod pouzdan.

Ako ne, i ako moramo da radimo replace u text editoru, koji editor bi bio najpovoljniji za to? Takođe, kako tačno da uradimo replace - da li da otvorimo text fajl u UTF8 encodingu, i da "čudni-karakter-koji-obeležava-slovo-Ž-u-ASCII" samo zamenimo normalnim "Ž" koje otkucamo u UTF8?

Poz
Humax 5400Z
ToH 3.3 - HoT7.1
 
Odgovor na temu

v_v
Software developer

Član broj: 5270
Poruke: 157
*.plus.com.



Profil

icon Re: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?09.01.2008. u 12:23 - pre 198 meseci
Citat:
Znači korišćenje nekog iconv programčeta na linuxu. Opet, nismo sigurni da bi to šljakalo 100%. Doduše, na još jednom sajtu pominju identičan metod:
http://gentoo-wiki.com/TIP_Convert_latin1_to_UTF-8_in_MySQL

Prevashodno, voleo bih da znam je li iko to radio i da li je metod pouzdan.


Evo, probali smo ovo, naravno bilo je suviše lepo da bi bilo istinito, dobijemo

ERROR 1153 (08S01) at line 1254: Got a packet bigger than 'max_allowed_packet' bytes

Bah. Znači to ne ide.
Humax 5400Z
ToH 3.3 - HoT7.1
 
Odgovor na temu

Jbyn4e

Član broj: 422
Poruke: 6049
*.ptt.yu.



+257 Profil

icon Re: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?09.01.2008. u 22:24 - pre 198 meseci
Khm, khm... ste procitali sta pise tamo?
Citat:

The max_allowed_packet-option is sometimes important. If your import ends up with a "ERROR 1153 at line 42: Got a packet bigger than 'max_allowed_packet'", you need to increase the packet size. Please mention, that you also need to update /etc/mysql/my.cnf and set max_allowed_packet=16M under the [mysqld] directive


Pa dakle povecajte opciju.

Umesto iconv na linuxu moze se koristiti i recode.


Kad sve ostalo zakaže, pročitaj uputstvo...
 
Odgovor na temu

[es] :: MySQL :: MySQL baza iz ISO-8859-1 u UTF8 charset - Š i Ž nestaju?

[ Pregleda: 3361 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.