如何将一个窗口-1251(俄罗斯西里尔文)MySql数据库转换为UTF-8

时间:2010-11-18 21:38:17

标签: mysql utf-8 character-encoding

我有一个russsian网站的数据库,它在windows-1251中编码。换句话说,这些字母在phpmyadmin:Âûõîäÿùàÿ â Ëîíäîíå ãàçåòà íà àðàáñêîì ÿçûêå «Àëü-Õàéÿò» ñîîáùèëà,中看起来像这样。另一个字难以辨认的charahcters。为了正确显示内容,必须在php中添加此代码。

header("Content-Type: text/html; charset=windows-1251");

我想将此网站迁移到开源软件,例如joomla或wordpress,而不会出现打嗝。

所以,为了做到这一点,我需要将这些看起来很滑稽的字符串转换为utf-8,即使在phpmyadmin中也是如此:

Выходящая в Лондоне газета на арабском языке «Аль-Хайят» сообщила,

任何帮助都会得到很多赞赏。

1 个答案:

答案 0 :(得分:3)

转储.sql并使用iconv(linux程序)。

iconv -f utf-8 -t latin1 < in.sql | iconv -f cp1251 -t utf-8 > out.sql

我今年早些时候做过How can I convert Cyrillic stored as LATIN1 ( sql ) to true UTF8 Cyrillic with iconv?

如果您不知道如何获取iconv,并且没有存储在sql中的任何敏感信息,我可以为您完成并将其发回给您。