为什么MySql在其information_schema上使用“utf8”进行sorting,而在所有其他数据库上使用latin1_swedish?

使用最新版本的MySql。 我创build了一个数据库,默认为Latin1_Swedish,只注意到'mysql'数据库也有Latin1_Swedish。 只有information_schema具有utf8_general_ci的sorting规则。 我应该改变我的数据库为UTF8? 如果是的话,怎么样?

有几个选项可以从默认的latin1_swedish设置中进行更改

你可以编译mysql来使用默认的字符集utf8

make WITH_CHARSET=utf8 WITH_COLLATION=utf8_bin 

您可以更改my.cnf文件中的默认值,也可以更改mysql服务器的运行时。

 mysqld --character-set-server=utf8 --collation-server=utf8_bin; 

您也可以在创build数据库时指定字符集。

 CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_bin; 

无论你是否应该 ,你的电话。

这里有一些关于这个话题的文档 ,可能值得一看。