使mac版的MYSQL支持emoji表情

时间:2023-01-11 14:43:57

1.首先介绍下常用的字符集

  • ASCII:美国信息互换标准编码;英语和其他西欧语言;单字节编码,7位表示一个字符,共128字符。
  • GBK:双字节,汉字内码扩展规范;中日韩汉字、英文、数字;双字节编码;共收录了21003个汉字,GB2312的扩展。
  • UTF-8:Unicode标准的可变长度字符编码;Unicode标准(统一码),业界统一标准,包括世界上数十种文字的系统;
  • UTF-8:使用一至三个字节为每个字符编码。
  • utf8mb4:存储四个字节,应用场景用于存储emoji表情,因为可以emoji表情四个字节。
  • utf8mb4:MySQL版本 > 5.5.3 。
  • 其他常见字符集:UTF-32,UTF-16,Big5,latin1

2.修改本地的数据库

对每一个数据库:

ALTER DATABASE 这里数据库名字 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

对每一个表:

ALTER TABLE 这里是表名字 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3.修改mysql配置文件

进入这个目录,在这个目录下面有个后缀为.cnf的文件
cd /usr/local/mysql/support-files/

将这个文件复制到etc目录中并将名字命名为my.cnf
sudo cp my-default.cnf /etc/my.cnf

然后编辑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

4.重启mysql


  • 启动:/usr/local/mysql/support-files/mysql.server start
  • 停止:/usr/local/mysql/support-files/mysql.server stop
  • 重启:/usr/local/mysql/support-files/mysql.server restart

service mysqld stop
service mysqld start
service mysqld restart