Na wstępie zaznaczam, że widziałem tematy o tym - ale żaden nie wyjaśnia tak na prawdę problemu - dlatego tworzę nowy.
OPIS SYTUACJI
Galeria zdjęć (Coppermine) - poprzednia wersja opierała się na latin2 - nieco wymuszona przeze mnie - gdyż silnik galerii nie radził sobie z wyszukiwaniem wg utf8. W efekcie baza były kodowana w latin2. Obecnie potrzebuje zrobić upgrade silnika galerii i jednocześnie całość oprzeć już na utf8. Baza ma kilkanaście tabel i kilkadziesiąt tysięcy rekordów - bez kompresji 54 MB, zip - 5,6 MB.
OPIS PROBLEMU
Nowa galeria poprawnie obsługuje wszystko na utf8 - tzn nowo wprowadzane rekordy, wyszukiwanie, a także swoje własne komunikaty systemowe napisane po polsku i kodowane w utf8. Jednak sama baza danych jest dalej w latin. Potrzebuję więc (jak mniemam) przekonwerterować bazę na utf8 bez utraty polskich znaków (tym bardziej że klienci stosują niestety też polskie znaki w nazwach plików - krzaki powodują że nadesłanych zdjęć po prostu nie widać)
Wszelkie próby ustawiania kodowania, porównywania napisów na utf8 nie dają żadnego rezultatu. Galeria wyświetla krzaki. (Wyświetla poprawnie gdy jest na latin2 - ale wtedy komunikaty systemowe mają krzaki). Eksport i import bazy powoduje że na miejscu krzaków są już tylko same pytajniki (eksport na kompa z Windowsem).
PROSBA
Czy ktoś mógłby dobrze opisać jak zrobić konwersje, czy są do tego programy, czy trzeba konwertować wszystkie rekordy - podobno cuda może zdziałać iconv. A może jest kto mógłby to dla mnie zrobić za oczywiście odwdzięczenie się.
Kurcze - mógłby ktoś pomóc - to na prawdę jest poważny problem.
Znalazłem w sieci kilka podpowiedzi ale żadne nie zdaje rezultatu.
Próbowałem zastosować metodę przez Gżegżółkę - tzn wyeksportować dane i strukturę osobno - przekonwerterować dane przez ten program a strukturę zamienić wpisy - a potem zaimportować.Ale...
Po eksporcie Gżegżółka rozpoznaje dane jako kodowane w ... utf8 więc konwersja nic nie zmienia - nawet jak wymuszę konwertowanie z latin2
Po drugie baza jest spora - i import jest przerywany przez limit czasu
Nie ma metody aby jakimś poleceniem SQL to odpowiednio pozamieniać?
Poza tym - jak to właściwie powinno być wszystko zorganizowane? - Wszystkie właściwości Tabel, bazy na utf8 - to wystarczy czy jeszcze coś? Jak to zrobiłem ręcznie to galeria (ustawiona na utf8) i tak dalej widzi krzaczki.