关于Mysql中插入手机端表情符号报错的解决办法

保证mysql版本至少在5.5.3,只有这个版本以上才出现了utf8mb4字符集

工作中碰到了这个问题,在网上搜了一些资料,问题得到了解决,在此做下笔记。

1.修改可能被插入表情数据的表字段字符集为utf8mb4

2.修改完字段字符集后,将该表的字符集同样修改为utf8mb4

3.完成前面两条后修改整个数据库的字符集,修改值同样为utf8mb4

4.执行sql语句SHOW VARIABLES LIKE '%char%查看当前字符集情况。

Variable_name             Value                      
------------------------  ----------------------------
character_set_client      utf8mb4                    
character_set_connection  utf8mb4                    
character_set_database    utf8mb4                    
character_set_filesystem  binary                     
character_set_results     utf8mb4                    
character_set_server      utf8                       
character_set_system      utf8                       
character_sets_dir        /usr/share/mysql/charsets/

 

当结果为上图所示的情况时,重启Mysql。启动完毕后生效。

5.如果character_set_server的值不为utf-8/utf8mb4则无法成功实现插入表情入库,则需要在Mysqlmy.cnf中修改character_set_server的值。

具体方法为:在[mysqld]下加 character_set_server=utf8mb4/utf-8。

6.Mysql启动的情况下执行sql语句:SET NAMES utf8mb4;。

7.重启Mysql

8.测试。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值