Какой мой лучший вариант для преобразования моей базы данных phpbb2 latin1 в базу данных phpbb3 utf8? - PullRequest
2 голосов
/ 19 марта 2011

Я обновляю форум phpBB 2.x до phpBB 3.x и пытаюсь выяснить, какой вариант лучше всего конвертировать в utf8 из предыдущей кодировки latin1. Сейчас я все еще работаю над файлом дампа базы данных phpBB2. Я использовал sed для обновления операторов CHARSET и SET NAMES в файле дампа, а затем попытался запустить его через iconv:

cat phpbb2.sql | sed 's/SET NAMES latin1/SET NAMES utf8/g' > tmp
mv tmp phpbb2_utf8.sql

cat phpbb2_utf8.sql | sed 's/CHARSET=latin1/CHARSET=utf8/g' > tmp
mv tmp phpbb2_utf8.sql

iconv -f latin1 -t utf8  phpbb2_utf8.sql > phpbb2_utf8_iconv.sql

Это не хорошо. Все виды мусора. Как вы думаете, я должен просто использовать latin1 на новой установке phpBB3?

Ответы [ 2 ]

2 голосов
/ 01 апреля 2011

Нет необходимости делать это.Преобразователь phpBB2 в phpBB3 будет импортировать данные из таблиц с латинской кодировкой 1 и сохранять их в кодированных файлах utf8.

2 голосов
/ 19 марта 2011
  1. Экспорт базы данных phpBB2 в простой файл .sql.
  2. Изменить кодировку этого файла с latain1 на Unicode UTF-8 (iconv).
  3. Изменить все вхождения DEFAULT CHARACTER SET, SET NAMES и т. Д. С latain1 на utf8.
  4. Изменить все вхождения COLLATION / COLLATE с latain1_*_ci на utf8_unciode_ci
  5. Запуск конвертера phpBB2 в phpBB3 .
...