Mysql 字符集utf8mb4设置无效

xinjirufen1 2018-08-13 09:26:44
背景:由于要解决java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'name' at row 1异常,所以要修改mysql字符集,改为utf8mb4。

修改字符集参考文章如下(参考修改后都没有效果):

https://www.jb51.net/article/144079.htm

https://blog.csdn.net/u014034329/article/details/80969246

mysql信息:

version:5.7.22免安装版

路径:D:\Work_Program_Files\mysql

my.ini文件信息:

[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
init_connect='set names utf8mb4'
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci


mysql已经配置成windows服务,并且启动成功。但是通过navicatformysql登录mysql,通过show VARIABLES like 'char%'; 命令查询出结果为如下:

变量character_set_client、character_set_connection、character_set_results、character_set_system没有改为utf8mb4



问题:如何修改mysql字符集,保证character_set_client、character_set_connection、character_set_results、character_set_system变量的字符集为utf8mb4
...全文
1569 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xinjirufen1 2018-08-15
  • 打赏
  • 举报
回复
引用 1 楼 zjcxc 的回复:
客户端执行 set names utf8mb4, 通过客户端连接时是可以指定字符集的,你可以根据你的连接方法在网络上搜索一个“xx连接 mysql 是指定字符集”

谢谢回答!
请问,你是指连接数据库时指定字符集吗?比如:用jdbc连接mysql时,url中指定字符集?
zjcxc 2018-08-14
  • 打赏
  • 举报
回复
客户端执行 set names utf8mb4, 通过客户端连接时是可以指定字符集的,你可以根据你的连接方法在网络上搜索一个“xx连接 mysql 是指定字符集”

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧