使用 PHPMyAdmin 将 MySQL-Charset 从 utf8 更改为 utf8mb4

Posted

技术标签:

【中文标题】使用 PHPMyAdmin 将 MySQL-Charset 从 utf8 更改为 utf8mb4【英文标题】:Change MySQL-Charset from utf8 to utf8mb4 with PHPMyAdmin 【发布时间】:2016-02-16 15:17:12 【问题描述】:

当我想用 phpMyAdmin 将 mysql-Charset 从 utf8 (utf8_general_ci) 更改为 utf8mb4 (utf8_unicode_ci) 时,我做这些事情就足够了吗?

    将数据库排序规则更改为“utf8_unicode_ci” 将表排序规则更改为“utf8_unicodel_ci” 将每个文本列更改为“utf8_unicodel_ci” 将我的 PHP 代码中的 set_charset 更改为“utf8mb4”

这是正确的还是缺少什​​么?哪里会出现问题?

【问题讨论】:

【参考方案1】:

所有联盟都一样:

用于数据库 - utf8mb4_unicode_ci 表 - utf8mb4_unicode_ci 列 - utf8mb4_unicode_ci

如果您想通过混合联盟避免字符串函数的功能错误,也可以为服务器设置默认联盟:

edit my.cnf (my.ini):
[mysqld]
collation-server = utf8mb4_unicode_ci
init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4

因为如果您在功能中创建新表而不是手动创建新表,而是从脚本中创建 - 它会创建所有具有默认服务器设置的新表,并且字符串函数可能会停止正常工作

【讨论】:

以上是关于使用 PHPMyAdmin 将 MySQL-Charset 从 utf8 更改为 utf8mb4的主要内容,如果未能解决你的问题,请参考以下文章