为什么 MySql 在其 information_schema 上使用 'utf8' 进行排序,但在所有其他数据库上却使用 latin1_swedish?

为什么 MySql 在其 information_schema 上使用 'utf8' 进行排序,但在所有其他数据库上却使用 latin1_swedish?

使用最新版本的 MySql。我创建了一个数据库,它默认为 Latin1_Swedish,刚刚注意到“mysql”数据库也有 Latin1_Swedish。只有 information_schema 的排序规则为 utf8_general_ci。我应该将我的数据库更改为 utf8 吗?如果是,该怎么做?

答案1

有一些选项可以更改默认的 latin1_swedish 设置

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

make WITH_CHARSET=utf8 WITH_COLLATION=utf8_bin

您可以在 my.cnf 文件中或在 mysql 服务器运行时更​​改默认值。

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

您还可以在创建数据库时指定字符集。

CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_bin;

不管你应该或者不,由你决定。

以下是一些文档关于这个话题,可能值得一看。

相关内容