将phpbb2 latin1数据库转换为phpbb3 utf8数据库的最佳选择是什么?

时间:2011-03-19 14:24:24

标签: mysql utf-8 character-encoding phpbb

我正在将phpBB 2.x论坛升级到phpBB 3.x,我正在试图找出从之前的latin1编码转换为utf8的最佳选择。现在我还在处理我的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

这不好。各种垃圾。你认为我应该在新的phpBB3安装上使用latin1吗?

2 个答案:

答案 0 :(得分:2)

  1. 将phpBB2数据库导出到普通的.sql文件。
  2. 将该文件的编码从latain1更改为Unicode UTF-8(iconv)。
  3. 将所有出现的DEFAULT CHARACTER SETSET NAMES等从latain1更改为utf8
  4. 将所有出现的COLLATION / COLLATElatain1_*_ci更改为utf8_unciode_ci
  5. phpBB2运行到phpBB3 转换器。

答案 1 :(得分:2)

没有必要这样做。 phpBB2到phpBB3转换器将从latin1编码表导入数据并将其存储在新表中的utf8编码。