We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

przejście z iso na utf8


ollerm
19-08-2009, 18:55
robisz dump bazy załóżmy przez PMA.. (oczywiście zostaw sobie jakiś backup)
potem iconvem zmieniasz kodowanie znaków: iconv -f iso-8859-2 -t utf-8 baza.sql > baza_utf.sql

edytujesz baza_utf i zmieniasz collation na utf-8, default_charset czy co tam jeszcze.. (z pamieci pisze i nie wiem czy poprawnie :P ) no i na samej górze w dumpie zmieniasz SET NAMES na UTF-8

alex51
19-08-2009, 18:47
Cytat Napisał ollerm
(...)najlepiej zrobić dumpa bazy, przepuścić go przez iconv i wciągnąć już jako utf-8
Czy mógłbyś więcej szczegółów podać dla laika? A może na PW jakaś konkretną ofertę pomocy? Jestem zdeterminowany zlecić tą sprawę kompetentnej osobie.

ollerm
19-08-2009, 18:29
no dobrze.. alter table zmienisz collation i charset. a co ze znakami? i tak zostaną w iso. najlepiej zrobić dumpa bazy, przepuścić go przez iconv i wciągnąć już jako utf-8

alex51
19-08-2009, 17:46
Rozumiem, że dla obeznanych z tematem podane informacje mogą być wystarczające, mnie jednak potrzebne byłyby bardziej szczegółowe wyjaśnienia.
Dlatego uprzejmie proszę o odpowiedź na następujące pytania:

1. W jaki sposób z poziomu PHPMyAdmina przekonwertować wszystkie tabele z typem zapisu danych varchar/txt z aktualnego kodowania na kodowanie binary?
Gdzie i jak użyć wspomnianego: ALTER TABLE?

2. Za pomocą jakiego skryptu osiągnąć w/w?

3. Jak z poziomu PHPMyAdmina przekonwertować wszystkie tabele z typem zapisu danych varchar/txt z binary na kodowanie utf-8?

4. Za pomocą jakiego skryptu osiągnąć w/w?

Proszę potraktować mnie jak zupełnego amatora w tej kwestii, ewentualnie wskazać możliwość odpłatnego wykonania potrzebnej konwersji.

no4b
18-08-2009, 20:23
http://dev.mysql.com/doc/refman/5.1/en/alter-table.html

alex51
18-08-2009, 15:52
Można prosić o więcej szczegółów, lub o linki wskazujące na sposób przeprowadzenia zalecanej operacji?

Łabędź
18-08-2009, 14:59
Cytat Napisał alex51
Problemem jest zlikwidowanie "krzaczków" w danych, przykładowo takich:

Chciałbym prosić o wskazówki umożliwiające mi przekodowanie danych zawartych w bazie danych.
Najpierw w tabelach źródłowych ALTER TABLE z varchar/text UTF8 na bin, potem export/import, na koniec w tabelach docelowych ALTER TABLE z bin na varchar/text z UTF8.


pozdrawiam

alex51
18-08-2009, 13:25
Korzystam u Państwa od początku 2007r. z serwera 1000GP, na którym prowadzę witryną na joomla 1.0.15 JAL - iso. Mam zamiar przejść na taką samą wersje joomla, ale kodowaną w utf-8, czyli na joomla 1.0.15 JIE. Chciałem najpierw przetestować operację przejścia na localhoscie, zainstalowałem już potrzebną wersję joomla, założyłem bazę danych, lecz utknąłem na próbie konwersji kopii obecnie używanej bazy danych.
Baza danych aktualnie używanej witryny ma takie dane:
System kodowania znaków dla MySQL: UTF-8 Unicode (utf8)
System porównań dla połączenia MySQL: utf8_unicode_ci
Metoda porównania napisów: latin1_swedish_ci
Baza danych, potrzebna dla J! 1.0.15 JIE, kodowanej w wersji utf-8 wymaga bazy posiadającej takie ustawienia:
System kodowania znaków dla MySQL: UTF-8 Unicode (utf8)
System porównań dla połączenia MySQL: utf8_unicode_ci
Metoda porównania napisów: utf8_general_ci
W nowo utworzonej bazie mam już założone wszystkie tabele uwzględniające kodowanie:
TYPE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Problemem jest zlikwidowanie "krzaczków" w danych, przykładowo takich:
Jednym z mo¿liwo¶ci takiej ochrony mo¿e byæ uniemo¿liwienie takim osobom dostêpu do naszych zasobów. To jest mo¿liwo¶æ... ale jak t± mo¿liwo¶æ zrealizowaæ ?
Chciałbym prosić o wskazówki umożliwiające mi przekodowanie danych zawartych w bazie danych.