Konwersja z latin1 do utf8
Aby ręcznie zmienić kodowanie bazy danych, potrzebny będzie dostęp poprzez ssh.
Uwaga! Jeśli czegoś nie rozumiesz to nic nie rób, jest to tutorial dla zaawansowanych.
Oto lista kroków:
1. Wyłącz forum i modyfikacje.
2. Zrzuć bazę danych pomijając dane obrazków:
Kod:
# mysqldump -u DBUSERNAME -p --opt --skip-set-charset --ignore-table=VBULLETINDBNAME.customavatar --ignore-table=VBULLETINDBNAME.customprofilepic --ignore-table=VBULLETINDBNAME.picture --ignore-table=VBULLETINDBNAME.socialgroupicon --ignore-table=VBULLETINDBNAME.socialgrouppicture VBULLETINDBNAME > VBULLETINDBNAME.sql
3. Zrzuć dane obrazków:
Kod:
#mysqldump -u DBUSERNAME -p --opt --default-character-set=latin1 VBULLETINDBNAME customavatar customprofilepic picture sigpic socialgroupicon socialgrouppicture > VBULLETINDBNAME_images.sql
4. Skonwertuj znaki do UTF8 za pomocą inonv.
Kod:
#iconv -c -f windows-1251 -t utf-8 VBULLETINDBNAME.sql > VBULLETINDBNAME_utf8.sql
5. Zmień skrypt aby upewnić się że będzie korzystać z UTF8
Kod:
#sed –i 's/latin1/utf8/g' VBULLETINDBNAME_utf8.sql
#sed –i 's/latin1/utf8/g' vogue_forums_untouchable_images.sql
6. Stwórz nową bazę danych (upewnij się że kodowanie to utf8)
7. Zaimportuj skonwertowaną bazę na nowy serwer:
Kod:
#mysql -u NEWDBUSER -p –default-character-set=utf8 NEWVBDATABASENAME < VBULLETINDBNAME_utf8.sql
#mysql -u NEWDBUSER -p –default-character-set=utf8 NEWVBDATABASENAME < VBULLETINDBNAME_images.sql
8. Przeprowadź proces aktualizacji: acp - Konserwacja - Aktualizacja Danych
-----------
źródło: vbulletin.org