当我测试 MediaWiki 的新版本 (1.20wmf4) 时,我看到(参见:screen capture)以下关于数据库字符集的消息:
In binary mode, MediaWiki stores UTF-8 text to the database in binary fields. This is more efficient than MySQL's UTF-8 mode, and allows you to use the full range of Unicode characters.
In UTF-8 mode, MySQL will know what character set your data is in, and can present and convert it appropriately, but it will not let you store characters above the Basic Multilingual Plane.
我在 MediaWiki 引擎上有自己的 Wiki,但我的表格使用 utf8_general_ci
排序规则。我的问题是:如何在现有数据库中轻松地将排序规则从 utf8_general_ci
更改为 binary
?
我的 MediaWiki 版本:1.19.0
我的 MySQL 信息:
- 服务器:通过 UNIX 套接字的本地主机
- 服务器版本:5.1.52
- 协议(protocol)版本:10
- MySQL 字符集:UTF-8 Unicode (utf8)
最佳答案
不久前我不得不做类似的事情并按照这里的说明进行操作: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
的任何实例。
关于mysql - 如何在 MySQL 中将 utf8_general_ci 更改或转换为二进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10949959/