mysql - 在 my.cnf 中将 MySQL 默认字符集更改为 UTF-8

mfryf 阅读:4 2023-05-25 15:08:15 评论:0

目前我们在 PHP 中使用以下命令将字符集设置为 UTF-8在我们的应用程序中。

由于这有点开销,我们想将此设置为 MySQL 中的默认设置。我们可以在/etc/my.cnf 或其他位置执行此操作吗?

SET NAMES 'utf8' 
SET CHARACTER SET utf8 

我在/etc/my.cnf 中寻找了一个默认字符集,但那里没有关于字符集的内容。

此时,我执行以下操作将 MySQL 字符集和排序规则变量设置为 UTF-8:

skip-character-set-client-handshake 
character_set_client=utf8 
character_set_server=utf8 

这是处理这个问题的正确方法吗?

请您参考如下方法:

要将默认设置为 UTF-8,您需要将以下内容添加到 my.cnf/my.ini

[client] 
default-character-set=utf8mb4 
 
[mysql] 
default-character-set=utf8mb4 
 
 
[mysqld] 
collation-server = utf8mb4_unicode_520_ci 
init-connect='SET NAMES utf8mb4' 
character-set-server = utf8mb4 

如果您想更改现有数据库的字符集,请告诉我...您的问题没有直接指定,所以我不确定您是否想要这样做。

编辑:由于 utf8 只是 UTF-8 的子集,我在原始答案中将 utf8 替换为 utf8mb4。 MySQL 和 MariaDB 都调用 UTF-8 utf8mb4


标签:程序员
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

全民解析

全民解析

关注我们