在MySQL中,我在my.cnf中放置了什么,以便所有表都是默认使用emojis的UTF-8?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (27)

我希望每个表和数据库(被创建)都是与emojis一起工作的utf-8。我知道我需要在里面定义几个变量my.cnf:

init_connect='SET collation_connection = ??? '
init_connect='SET NAMES ???'
character-set-server = ???
collation-server = ???

但是,我不知道在???...。我把什么放进去my.cnf?

提问于
用户回答回答于

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
用户回答回答于

除了更改为utf8mb4也许还有更多的事情要做。

如果已经有了具有utf8 columns; do ALTER TABLE .. CONVERT TO CHARACTER SET utf8mb4...

当你连接时,一定要建立UTF-8如果客户端有一种非mysql的方法,或者使用SET NAMES utf8mb4...

记住root视而不见init-connect...。你有一个非根“用户”的应用程序。

扫码关注云+社区