Переконвертация базы

Статус
В этой теме нельзя размещать новые ответы.

Axom

Постоялец
Регистрация
25 Апр 2007
Сообщения
320
Реакции
105
Хочу перегнать базу (форум vbulletin) весом 1гиг из (большей в которой она сейчас) latin1_swedish_ci в utf8.
Но, при импортирование базы с принудительной utf8 с помощью sypex dumper, большая часть русских слов, вместо перекодировки пропадает совсем...
Как можно решить эту проблему?
Пробовал перегонять в cp1251, так на таблице post, весом 500мб, dumper жестоко начинает тормозит и еле-еле выполняет всё, а потом застревает просто....
Что можно сделать? :(
 
можно использовать консольный iconv. он есть и под юниксы и под винду.
1. сделать несжатый sql дамп при помощи sypex dumper
2. ручками заменой поменять в нем codepage на всех табличках
3. конверт кажись так(ток свой дамп подсунь:( iconv -c -f latin1 -t utf-8
4. поднимаем дамп назад при помощи sypex dumper
 
  • Нравится
Реакции: Axom
Насколько я понимаю, база в MySQL.

Только что нашел в мануале такую команду:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;

Мануал говорит, что он поменяет кодировку таблицы и переконвертит все текстовые поля в ней.

Вероятно, это не поможет, если текст хранится в BLOB'ах, т.к. они так и останутся в swedish. Думаю, в этом случае нужно преобразовать BLOB'ы в TEXT, переконвертить кодировку и поменять тип обратно.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху