查看数据库的编码格式
1 2 3 | SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%' ; 或 SHOW VARIABLES Like '%char%' ; |
修改配置文件my.cnf
1 2 3 4 5 6 7 8 | [mysqld] character - set -server=utf8mb4 [mysql] default - character - set =utf8mb4 [client] default - character - set =utf8mb4 |
如果不知道配置文件在哪里的话可以根据一下命令查找
1 2 3 | mysqld --verbose --help|grep -A 1 'Default options' 或者是执行: mysql --verbose --help|grep -A 1 'Default options' |

从上图可以看出, 服务器首先会读取/etc/my.cnf文件,如果发现该文件不存在,再依次尝试从后面的几个路径进行读取。
修改配置文件后保存,并重启mysql服务
1 2 3 | service mysqld restart 或 service mysql restart |
如果数据库、表已经创建可以直接修改数据库或表的编码格式
查看数据表的编码格式
1 | show create table <表名>; |
修改数据库的编码格式
1 | mysql> alter database <数据库名> character set utf8mb4; |
修改数据表格编码格式
1 | alter table <表名> character set utf8mb4; |
修改字段编码格式
1 | alter table <表名> change <字段名> <字段名> <类型> character set utf8mb4; |