SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%'; 查询字符集mysql
SET NAMES utf8mb4; 将当前链接的数据格式设置为utf8mb4,这时候当前链接才能保存表格符号spring
再查询字符集结果sql
ALTER TABLE `wx_wxuser` MODIFY COLUMN `nickname` VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '昵称' ; 数据库
只须要该项操做,将字段设置为utf8mb4windows
SHOW FULL COLUMNS FROM wx_wxuser; 显示表字段详细信息缓存
spring boot 2.1.6 将启动链接格式设置为utf8mb4 测试
spring.datasource.hikari.connection-init-sql=SET NAMES utf8mb4 编码
经测试, 默认就是utf8mb4,能够不用配置该项3d
jpa设置生成的字段为utf8mb4格式code
@Column(columnDefinition = "VARCHAR(255) CHARACTER SET utf8mb4")
测试数据:👑Mi
mysql的my.ini配置文件,注意不要使用windows的默认记事本打开,没法保存为utf8格式,要是这种格式,notepad++显示:
my.ini配置:
[client] default-character-set=utf8mb4 [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4 [mysqld] default_time_zone=+8:00 #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=D:\Program Files\mysql-5.7.25-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\Program Files\mysql-5.7.25-winx64\data # 容许最大链接数 max_connections=1000 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8mb4 collation-server = utf8mb4_unicode_ci init_connect=SET NAMES utf8mb4 # 建立新表时将使用的默认存储引擎 default-storage-engine=INNODB #开启查询缓存 explicit_defaults_for_timestamp=true #开启binlog log-bin=mysql-bin-log expire-logs-days=7 max-binlog-size=500M binlog-format=Row server-id=10