查看数据库的编码格式
|
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; |
转自:https://www.cnblogs.com/rainerl/p/10950472.html