[IT-general]mediawiki迁移的乱码问题 |
明蓝 发表于 2007/9/17 18:31:34 | 最近做medawiki的迁移(从WAMP平台到LAMP平台),但迁移过来的网站条目标题全是乱码(数据库中也是如此),但正文正常。 用“SHOW VARIABLES LIKE 'character_set_%'; ”查询,得到结果如下:Variable_name Value character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server latin1 character_set_system utf8 character_sets_dir E:\xampplite\mysql\share\charsets\
用SHOW VARIABLES LIKE 'collation_%'; 查询,结果如下:Variable_name Value collation_connection utf8_general_ci collation_database utf8_general_ci collation_server latin1_general_ci
我怀疑是描红的参数有问题,参照仲子的文章修改后,结果打开主页报如下错误:
发生数据库查询语法错误. 可能是由于软件自身的错误所引起. 最后一次数据库查询指令是:
(SQL查询已隐藏)
来自于函数 "Article::pageData". MySQL返回错误 "1267: Illegal mix of collations (latin1_bin,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' (localhost)".
今天在原WAMP环境中试着迁移了一下:
1.改mysql下的my.ini的字符参数,当时是lanti1,我把它改成utf8后导出数据库。(不修改my.ini参数导出的数据库在原环境中再现也是乱码)
2.在原WAMP环境中,复制mediawiki文件夹,新建数据库(整理项选utf8-general-ci)并导入数据库,修改相关参数
3.新的mediawiki显示出的条目标题仍然是乱码(但用前述的两个SQL查询语句检查,上面描红的参数已经全部变成utf8。)
因此,我怀疑不是迁移后mysql或php等环境的版本问题,而是数据库默认字符集的问题,即一导出即是错误的。
但是,服务器上另外的应用是wordpress,通过数据库导出再导入迁移后一切正常,中文没有任何乱码。这是否意味着数据库默认字符集其实也没问题?根源仍然在mediawiki而不是在mysql?
困惑中。
|
|
回复:mediawiki迁移的乱码问题 |
问问(游客)发表评论于2008/2/19 16:34:29 | 查查mysql的语言编码吧,是不是有问题,mysql有的版本也会出现这种问题,很头痛
|
|
回复:mediawiki迁移的乱码问题 |
idswe(游客)发表评论于2007/9/18 8:48:57 | wordpress也是用mysql作为后台的吗?
mysql应该有单独查看数据库内容的方法吧,可以通过它看一下导出后的数据库字符是否正确,再查一下导入后的新数据库字符是否正确,从而可判断是哪个环节把字符给损坏了。
没用过mysql,只是猜测一下~
|
|
» 1 »
|
.: 公告
我的分类:“春雨楼头”是平时自己对生活的所思所虑,不涉及专业。“平芜尽处”是专业上的所想所惑,不局限于任何主题,day after day主要是英文学习方面的。从2007年8月份起,专业上的内容都放到“图林茶”中去了,这里只写专业以外的东东啰:)。
|
|
« | September 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | | | | |
|
.: 我的分类(专题)
|
blog名称:花生壳 日志总数:450 评论数量:771 留言数量:6 访问次数:7286025 建立时间:2004年11月4日 |
|
.: 链接
|

|