oisac
09-10-2007, 10:08
Temat przenoszenia był wiele razy poruszany. Jednak spośród 50 wyników wyszukiwania wątków na ten temat żaden z nich nie wniósł nic co by mi pomogło. Wydaje mi się, że da się to rozwiązać za pomocą opublikowanych tutaj wskazówek jednak najwyraźniej coś robie źle i dlatego nadal widzę znaki zapytania. Baza jest przenoszona z localhosta (krasnal, phpMyAdmin 2.6.0-pl2, MySQL 3.23.58-max-debug) na serwer (phpMyAdmin - 2.9.1.1, MySQL: 5.0.32). Bazę eksportuje po prostu do pliku *.sql. Zmienne i ustawienia serwera (krasnal) związane z kodowaniem to:
character set: latin1
character sets: latin1 big5 czech euc_kr gb2312 gbk sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5
Zmienne i ustawienia serwera na który importujemy bazę związane z kodowaniem to:
character set client: utf8
(Wartość globalna): latin1
character set connection: latin2
(Wartość globalna): latin1
character set database: latin1
character set results: utf8
(Wartość globalna): latin1
character set server: latin1
character set system: utf8
collation connection: latin2_general_ci
(Wartość globalna): latin1_swedish_ci
collation database: latin1_swedish_ci
collation server: latin1_swedish_ci
Zawartość pliku includes/database.php związana z kodowaniem to:
$this->_table_prefix = $table_prefix;
//@mysql_query("SET NAMES 'latin2'", $this->_resource);
$this->_ticker = 0;
$this->_log = array();
Po "setnej" próbie naprawienia problemu ustawiłem metodę porównywania napisów na latin2_general_ci, system kodowania znaków dla MySQL to: UTF-8 Unicode (utf8), system porównań dla połączenia MySQL: latin2_general_ci. Nic to nie pomogło.
Zmiana Language w phpMyAdminie na localhost z Polish (pl-iso-8859-2) na Polish (pl-utf-8) też nic nie dało. Tak samo było przy zmianie tych samych parametrów przy logowaniu na serwer docelowy. Z tym że tutaj domyślnie jest utf-8.
Może to jest jakiś szczegół, moje niedopatrzenie, ale może ktoś ma jedno rozwiązanie, uniwersalne które rozwiąże ten problem. Proszę o pomoc. :)
character set: latin1
character sets: latin1 big5 czech euc_kr gb2312 gbk sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5
Zmienne i ustawienia serwera na który importujemy bazę związane z kodowaniem to:
character set client: utf8
(Wartość globalna): latin1
character set connection: latin2
(Wartość globalna): latin1
character set database: latin1
character set results: utf8
(Wartość globalna): latin1
character set server: latin1
character set system: utf8
collation connection: latin2_general_ci
(Wartość globalna): latin1_swedish_ci
collation database: latin1_swedish_ci
collation server: latin1_swedish_ci
Zawartość pliku includes/database.php związana z kodowaniem to:
$this->_table_prefix = $table_prefix;
//@mysql_query("SET NAMES 'latin2'", $this->_resource);
$this->_ticker = 0;
$this->_log = array();
Po "setnej" próbie naprawienia problemu ustawiłem metodę porównywania napisów na latin2_general_ci, system kodowania znaków dla MySQL to: UTF-8 Unicode (utf8), system porównań dla połączenia MySQL: latin2_general_ci. Nic to nie pomogło.
Zmiana Language w phpMyAdminie na localhost z Polish (pl-iso-8859-2) na Polish (pl-utf-8) też nic nie dało. Tak samo było przy zmianie tych samych parametrów przy logowaniu na serwer docelowy. Z tym że tutaj domyślnie jest utf-8.
Może to jest jakiś szczegół, moje niedopatrzenie, ale może ktoś ma jedno rozwiązanie, uniwersalne które rozwiąże ten problem. Proszę o pomoc. :)