微信呢称和QQ呢称上有很多火星文和emoji表情图片,这些数据,如果直接insert到mysql数据库,一般会报错,设置成utf8都不好使,必须改成utf8mb4编码,这二者的区别见: mysql utf8mb4与emoji表情 ,网上的解决办法大多是修改my.cnf参数,设置mysql的编码为utf8mb4,这种方法虽然彻底,但是通常要重启mysql,会造成生产系统临时当机。

下面是影响相对更小的处理方法:

前提:mysql的版本不能太低,低于5.5.3的版本不支持utf8mb4编码。

将表中的对应字段,比如会员表的呢称字段,其字符集修改成utf8mb4。

然后在java客户端,将mysql-connector-java升级成最新版(目前最新版是5.1.37),最后修改druid数据源的配置,增加一行:

<property name="connectionInitSqls" value="set names utf8mb4;"/>

完整配置参考下面:

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"><property name="driverClassName" value="${jdbc-driver}"/><property name="url" value="${jdbc-url}"/><property name="username" value="${jdbc-user}"/><property name="password" value="${jdbc-password}"/><property name="filters" value="stat"/><property name="maxActive" value="20"/><property name="initialSize" value="1"/><property name="maxWait" value="60000"/><property name="minIdle" value="1"/><property name="timeBetweenEvictionRunsMillis" value="3000"/><property name="minEvictableIdleTimeMillis" value="300000"/><property name="validationQuery" value="SELECT 'x'"/><property name="testWhileIdle" value="true"/><property name="testOnBorrow" value="false"/><property name="testOnReturn" value="false"/><property name="poolPreparedStatements" value="true"/><property name="maxPoolPreparedStatementPerConnectionSize" value="20"/><property name="connectionInitSqls" value="set names utf8mb4;"/></bean>

基本上应该就可以了,如果还不行,检查下jdbc连接串的设置:

jdbc:mysql://localhost:3306/db名称?useUnicode=true&characterEncoding=utf8

再不行的话,把最后的?useUnicode=true&characterEncoding=utf8 去掉

作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

MySQL保存微信呢称和QQ呢称上有很多火星文和emoji表情图片,解决mysql配置utf8mb4 的问题相关推荐

  1. mysql保存微信昵称特殊字符

    我在用mysql 保存微信昵称,当插入昵称数据的时候,报错.于是做了如下工作: 一.简介    MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门 ...

  2. 记一次PHP+Mysql保存微信昵称带表情符失败案例

    记一次PHP+Mysql保存微信昵称带表情符失败案例 bug描述 做微信登陆时,出现部分用户不能等陆. 经过查看日志,发现是因为此部分用户使用了带表情的昵称. Statement could not ...

  3. Java实现mysql保存微信特殊表情符号

    问题背景: 1.微信公众号开发,使用微信登录,保存用户微信昵称. 2.Java保存报错: Incorrect string value: "xFOx9Fx92x9D vxE6..'f or ...

  4. mysql emoji表情_让MySQL支持Emoji表情 mysql 5.6

    最近在做微信相关的项目,其中MySQL 要存储emoji表情,因此发现我们常用的utf8 字符集根本无法存储表情.网上有不少替代方案.本人还是采用了修改MySQL字符集的方案简单快捷. 首先将我们数据 ...

  5. 微信小程序开发系列(五)——小程序中存储emoji表情符

    我的小程序整个架构是 app+ asp.net + mysql 因为在"短信定时提醒"中的"随手记"里想存储表情符,所以还是经过了一番折腾的. 首先上网查遍了e ...

  6. php mysql emoji表情_php 让MySQL支持Emoji表情 mysql 5.5.3+

    让MySQL支持Emoji表情 mysql 5.5.3+ 让mysql支持Emoji表情,涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集. mysql 版本 5.6 1 解决 ...

  7. 让mysql支持emoji表情_让MySQL支持Emoji表情 mysql 5.6

    让MySQL支持Emoji表情,涉及无线相关的 MySQL数据库建议都提前采用 utf8mb4 字符集. mysql 版本 5.6 1 解决方案:将Mysql的编码从utf8转换成utf8mb4. 需 ...

  8. php mysql emoji表情_让MySQL支持Emoji表情

    让MySQL支持Emoji表情,涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集.utf8mb4和utf8到底有什么区别呢?原来以往的 让MySQL支持Emoji表情,涉及无线 ...

  9. mysql保存微信昵称特殊字符异常解决方法(已解决)

    1.问题描述 项目中的一个问题,微信用户注册的时候,微信用户的名称导致 MySQL 数据库插入异常 Incorrect string value: '\xF0\x9F\x98\x82\xE6\x81. ...

最新文章

  1. Github 2020年度报告:你以为新冠击溃了开发者?不!他们创造了更多代码...
  2. 解读金山网盾3.5 0day漏洞免疫技术
  3. Linux下查看nginx apache mysql php的编译参数
  4. RxJava系列4(过滤操作符)
  5. 成功解决mod = importlib.util.module_from_spec(spec)ImportError: DLL load failed: 找不到指定的程序。
  6. [Issue Fixed]-Ubuntu开发环境下遇到的环境问题梳理
  7. [luogu P4198] 楼房重建(线段树 + 思维)
  8. java post返回xml数据类型_Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据...
  9. C++基础与深度解析第三章:数组、vector与字符串
  10. MYSQL数据库学习----查询
  11. freemarker【FTL】常见语法大全
  12. 中国省份城市列表(汉字+拼音)
  13. 图元变形lisp源码_CAD lisp 实用小程序(源代码)
  14. 软件工程学硕考研经验分享
  15. 【LeetCode】279.完全平方数(四种方法,不怕不会!开拓思维)
  16. 移动端adaptive设置
  17. c语言floor函数_floor()函数以及C ++中的示例
  18. 怎么权衡不同类型项目的收益产出比 ROI?
  19. SAP Cloud Platform会抛弃ABAP吗?
  20. MGM(Modified Gaussian Model)模型程序及参数详解

热门文章

  1. PTA-c语言 大笨钟
  2. vue vue-router 同一个页面地址栏参数改变,页面不刷新的问题
  3. 设计模式读书笔记(读后感)
  4. g2o原理及应用(一)
  5. cad2014卡顿的解决方法_cad 2014总是卡死怎么解决-解决autocad 2014卡顿的办法 - 河东软件园...
  6. html瀑布流布局layui,瀑布流插件jquery.waterfall.js 的使用
  7. 安全性和保密性设计---身份认证与访问控制
  8. BeautifulSoup教程
  9. 计算机 游戏 排名2015年,游戏笔记本电脑排名2015年
  10. 怎么激活windows