背景

​ 学习使用 SpringCloud 时,使用 消费者 调用 生产者 时抛出 SQLException,持久层框架为 MyBatis,数据库为最新版本的 MySQL 版本如下:

Server version: 8.0.17 MySQL Community Server - GPL

问题

​ 当 消费者 调用 生产者 的接口时,生产者端 抛出 SQLException ,如下:

java.sql.SQLException: Unknown character set index for field '255' received from server.

原因

​ MySQL数据库版本高,MySQL的jar包版本低造成MySQL与jar包的编码错乱,如背景所描述,我的版本为 8.0.17

​ MYSQL 5.5 之前, UTF8 编码只支持1-3个字节;从MYSQL5.5开始,可支持4个字节UTF编码utf8mb4;

区别如下:

解决方法

​ 需升级jar包,使用 **mysql-connector-java-5.1.46.jar **或者更高,根据自身mysql版本决定

​ 如果使用Maven,则在pom文件中指定 依赖版本 即可,如下:

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>

**如果觉得这篇文章对你有帮助,就给个 推荐 吧!**

MySQL版本问题导致的SQLException的更多相关文章

  1. 数据导入导出mysql版本不同导致的问题

    5.6.16-log导出.5.5.47-log导入 `addtime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '记录生产时间', 需要修改为: `add ...

  2. 关于阿里云centos 2.6下手机表情输入后无法保存到mysql数据库的问题调研及mysql版本从5.1升级到5.7的全过程纪要

    近日在开发手机app的评论功能时,输入表情文字,保存后提示数据库保存失败.错误日志片段如下 caused by: java.sql.SQLException: Incorrect string val ...

  3. 升级 phpStudy 中 MySQL 版本至 5.7.17

      由于本地用的集成环境是 phpStudy 2016,没有找到升级 MySQL 版本的选项,所以自己升级一下. 从官网上下载高版本的 MySQL :https://dev.mysql.com/dow ...

  4. MySQL编码不一致导致查询结果为空

    升级数据库后(5.1到8.0),发现一个奇怪的问题,某些页面在升级前可以正常查询,但升级后什么也查不出来了,有时候还会查出错误的结果.经过一整天的排查,终于发现由两个原因导致,现记录如下. 第一是数据 ...

  5. MySQL--DROP TABLE与MySQL版本

    ======================================================================== DROP TABLE与MySQL版本 MySQL在5. ...

  6. windows 下phpstudy 升级mysql版本5.7

    今天在导入sql文件的时候遇到了sql执行错误.最后找到原因是因为mysql版本过低,导致出错 原因:在执行sql的时候出现了两次CURRENT_TIMESTAMP ,最后得知在5.7版本之前都是不支 ...

  7. MySQL Online DDL导致全局锁表案例分析

    MySQL Online DDL导致全局锁表案例分析 我这边遇到了什么问题? 线上给某个表执行新增索引SQL, 然后整个数据CPU打到100%, 连接数暴增到极限, 最后导致所有访问数据库的应用都奔溃 ...

  8. 好多坑的升级 phpStudy 中 MySQL 版本至 5.7.17

      由于本地用的集成环境是 phpStudy 2016,没有找到升级 MySQL 版本的选项,所以自己升级一下. 从官网上下载高版本的 MySQL :https://dev.mysql.com/dow ...

  9. 第二周——1.项目中MySQL版本问题

    1.版本升级 经组长推荐,本地安装的是mysql-8.0.11,而主项目用的还是版本5.6, 因此需要升级版本. 首先,更新驱动:下载mysql-connector-java-8.0.11,将E:\P ...

随机推荐

  1. Beta冲刺(8/7)——2019.5.30

    作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Beta冲刺(团队) 团队目标 切实可行的计算机协会维修预约平台 开发工具 Eclipse 团队信息 队员学号 队 ...

  2. PHP 函数禁用设置方法

    PHP 函数禁用设置方法先找到php.ini 然后搜索disable_function 直接在上面添加你要禁用的函数就可以了 然后记得重启php-fpm(如果装了php-fpm)

  3. linux 三剑客(awk,sed,grep)

    1.awk 在某些场景下,我们需要过滤方式希望是列来匹配,而不是sed的行来匹配,而且awk还可以嵌套for等循环去使用,拓展性强,当然awk也是最难的. awk的常用命令选项: -F fs   fs ...

  4. Extra:Variable Types

    文章著作权归作者所有.转载请联系作者,并在文中注明出处,给出原文链接. 本系列原更新于作者的github博客,这里给出链接. 在我们使用Cg或者HLSL进行shader编写的过程中,常常涉及到一些变量 ...

  5. SpringCloud与Dubbo区别对比

    1:SpringCloud与Dubbo区别对比 (1):活跃度 目前SpringCloud的活跃度明显远高于Dubbo(参考github) (2):主要区别   Dubbo Spring Cloud ...

  6. POJ 2249 暴力求组合数

    Binomial Showdown Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22692   Accepted: 692 ...

  7. linux 开机mount nfs

    mount -t nfs 10.208.1.235:/home/gis/bigrasterdata/mxds/uploads  /usr/local/website/upload/pythonmxds ...

  8. 在VB编程中,若一行代码太长需要换行时,行尾要加什么符号

    & _ 注意,&与_之间一定要有一个空格 例如: aa="select " & _     "  a,b,c" & _      ...

  9. 今天是JAVA诞生日

    今天是JAVA诞生日,祝贺!!! 1995年5月23日,Sun公司在Sun world会议上正式发布Java和HotJava浏览器,Java诞生. https://baike.baidu.com/it ...

  10. Java解析复杂JSON数据的一种方法

    1.需解析JSON数据: { "code": 0, "message": "success", "sid": " ...