MySQL - przenoszenie bazy i kodowanie - szlag mnie trafia!!!
piotrek - 14-06-2006 02:58
MySQL - przenoszenie bazy i kodowanie - szlag mnie trafia!!!
witam, od kilku h sie mecze i z obawy o moj komputer i wlasne nerwy postanowilem zapytac bo zaraz mnie cos trafi;-)
serwer zrodlowy: MySQL 4.1.19 standard phpMyAdmin - 2.8.0.2 system porownan dla polaczenia mysql: utf8_unicode_ci system kodowanie znakow dla mysql: utf8
to pisze na stronie glownej phpmyadmina, ale kazda tabela ma: latin1_swedish_ci
eksportuje toto, mam plik wynikowy UTF8 w ktorym PL znaki zdaje sie sa kodowane w iso-8859-2 (sam juz nie wiem mam metlik we lbie od tego kodowania...)
serwer na jaki chce to zaimportowac: home.pl nie widze jakie wersje maja...
jak importuje na home.pl plik z baza to mi PL znaki zamienia na krzaki albo znaki zapytania (jesli costam poprzestawiam)...
jak to dobrze zaimportowac, jak na przyszlosc ustawiac kodowanie baz i tabel zeby nie miec takich problemow... zakladam ze chce w bazach miec wersje EN,PL i RUS ?
ktos mi to naswietli jasno i przejrzyscie i pomoze jak zaimportowac baze tak aby PL literki sie dobrze wpisaly??
pozdrawiam i dzieki z gory za odpowiedz, bardzo mi zalezy! piotrek
-- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
keczerad - 14-06-2006 02:58
piotrek napisał(a):
> serwer na jaki chce to zaimportowac: > home.pl nie widze jakie wersje maja... >
show variables like '%version%'
> > jak importuje na home.pl plik z baza to mi PL znaki zamienia na krzaki albo > znaki zapytania (jesli costam poprzestawiam)...
DROP TABLE IF EXISTS `users`; CREATE TABLE `users` ( `id` int(10) unsigned NOT NULL auto_increment, `user` varchar(45) default NULL, `password` varchar(64) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE utf8_polish_ci;
i jeszcze odpowiedni sie laczyc uzywajac poprawnego charsetu, przyklad dla charsetu utf8
--
keczerad
http://www.e-mo.com.pl sklep w (X)HTML
Rafal - 14-06-2006 02:58
MySQL ma pojebany system kodowania ja cala baze zalozylem UTF8, tabele tez UTF8, konsola tez UTF8
a jak robie kopie bazy danych programem mysqldump to z polskich liter sa krzaczki
po przeanalizowaniu dokumentacji wykombinowalem metode: jak wpisuje mysqldump >plik.sql --default-character-set=latin1 to plik wynikowy jest kodowany w UTF8 sprawdzilem to edytorem AceHTML
no nie ze pojebane ?
Rafal - 14-06-2006 02:58
przypomnialo mi sie jak na probe kilka razy robilem kopie tablic do plikow i z powrotem ladowalem baze z tych plikow to baza po ktoryms tam razie ustawila sobie kodowanie tablic na UTF8 a nie jakis tam latin1 i mysqldump nie potrzebowal juz parametru --default-character-set=latin1
pozdrawiam
keczerad - 14-06-2006 02:58
Rafal napisał(a): > MySQL ma pojebany system kodowania > ja cala baze zalozylem UTF8, tabele tez UTF8, konsola tez UTF8
wszystko jest kwestia przyzwyczjenia, aby cos robic tez trzeba cos wiedziec, rozumiec a robieni na pale ma swoje wady :)
--
keczerad
http://www.e-mo.com.pl sklep w (X)HTML
Rafal - 15-06-2006 00:33
kolega ma racje: jak sie nie umie to sie nie da :)))
ale metoda prob o bledow mozna sie cos nauczyc czytanie dokumentacji do programow tez sie przydaje
a jesli mimo wysilkow nic sie nie udaje to zostaje grupa dyskusyjna jest pare osob co ma doswiadczenie i wiedze i chec pomagania innym :)))
pozdrawiam
Marcin Wasilewski - 18-06-2006 00:44
Użytkownik " piotrek" <piotrek225@WYTNIJ.gazeta.pl> napisał w wiadomości news:e6mb14$kjq$1@inews.gazeta.pl... > witam, > od kilku h sie mecze i z obawy o moj komputer i wlasne nerwy postanowilem > zapytac bo zaraz mnie cos trafi;-) > > serwer zrodlowy: > MySQL 4.1.19 standard > phpMyAdmin - 2.8.0.2 > system porownan dla polaczenia mysql: utf8_unicode_ci > system kodowanie znakow dla mysql: utf8 > > to pisze na stronie glownej phpmyadmina, ale kazda tabela ma: > latin1_swedish_ci > > eksportuje toto, mam plik wynikowy UTF8 w ktorym PL znaki zdaje sie sa > kodowane w iso-8859-2 (sam juz nie wiem mam metlik we lbie od tego > kodowania...)
Więc dane masz w latin1, Zrzuć toto do pliku, zobacz czy zamiast krzaczków, znaków zapytania nie nie ma. Jeśli masz tam coś co wygląda na PL litery, to dopisujesz w dumpie "set names latin1;". Wrzucasz to na home.pl. W twoich skryptach po każdym połączeniu z bazą musisz podawać "set names latin1;" Niedawno przerabiałem wrzucanie bazy z mojego serwera na home.pl i też miałem ten problem, ale metodą prób i błędów wypracowałem jak to zrobić :)
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?=
[MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?=
[MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?=
[MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?=
Gdzie MySQL 4.1, a gdzie 5.0?
[MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?=
[MS SQL] "set names" (mySQL) w MS SQL
[mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
MySQL - jak =?ISO-8859-2?Q?wyeksportowa=E6_zawarto=B6=E6_wie?==?ISO-8859-2?Q?lkiej_tabeli?=
[MySQL] Czy da =?ISO-8859-2?Q?si=EA_wykonac_takie_powi=B1z?==?ISO-8859-2?Q?anie_mi=EAdzy_tabelami=2C_i_jak_to_odpyta=E6_? ==?ISO-8859-2?Q?=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.plred-hacjenda.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|