当我测试MediaWiki的新版本(1.20wmf4)时,我看到了(请参阅:screen capture)以下有关数据库字符集的消息:
在二进制模式中,MediaWiki将UTF-8文本以二进制字段存储到数据库中。 这比MySQL的UTF-8模式更有效,并允许您使用全范围的Unicode字符。
在 UTF-8模式中,MySQL会知道您的数据所在的字符集,并且可以正确显示和转换它,但它不会让您将字符存储在Basic Multilingual Plane上方。 / p>
我在MediaWiki引擎上有自己的Wiki,但我的表格是utf8_general_ci
整理。我的问题是:如何轻松地将现有数据库中的排序从utf8_general_ci
更改为binary
?
我的MediaWiki版本:1.19.0
我的MySQL信息:
答案 0 :(得分:2)
不久前我不得不做类似的事情并按照这里的说明进行操作:http://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki#Latin-1_to_UTF-8_conversion。您基本上必须导出数据库,在导出的SQL中将utf8_general_ci
替换为binary
,然后再次导入数据库。这些说明中的sed行不太正确,但您也可以手动编辑转储的SQL文件并修复utf8_general_ci
的任何实例。