mysql升级8.0后,项目遇到的坑
这里列举了mysql升级到8.0后项目遇到的一些问题
- 一、Unknown system variable 'tx_isolation'
- 二、The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to
- 三、validateConnection false
- 四、如果项目使用的是maven私服
- 五、总结
一、Unknown system variable ‘tx_isolation’
出现这个异常,是因为mysql-connector-java.jar的版本太低,数据库的版本太高,不匹配导致的。
因此将mysql-connector-java升级到最新版本就解决了问题.
<!-- 替换前 -->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.38</version>
</dependency>
<!-- 替换后 -->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.16</version>
</dependency>
二、The server time zone value ‘�й���ʱ��’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to
原因是因为使用了Mysql Connector/J 6.x以上的版本,然后就报了时区的错误
遇到的问题 servertime=UTC导致时间差8个小时(MySQL jdbc 6.0 版本以上必须配置此参数)。
解决办法,在配置url的时候不能简单写成 :
jdbc:mysql://localhost:3306/数据库名
而是要写成 :
jdbc:mysql://localhost:3306/数据库名?serverTimezone=UTC
而UTC代表的是全球标准时间 ,但是我们使用的时间是北京时区也就是东八区,领先UTC八个小时。
UTC + (+0800) = 本地(北京)时间
解决方案,url的时区使用中国标准时间。所以写成 :
jdbc:mysql://localhost:3306/数据库名?serverTimezone=Asia/Shanghai
三、validateConnection false
出现这个错误因为数据库连接池的包版本有问题,将数据库连接池升级,成功解决
<!-- 替换前 -->
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.15</version>
</dependency>
<!-- 替换后 -->
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.10</version>
</dependency>
四、如果项目使用的是maven私服
当项目是使用maven私服,而且私服里面也没有那些jar,解决办法:
<repositories>
<!-- 代码库 -->
<repository><id>alimaven</id><url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</repository>
</repositories>
五、总结
升级过程中可能遇到很多坑,我这里只列举了项目遇到的,还有一些服务器遇到的坑我就不一一列举了,希望能帮助到各位。
mysql升级8.0后,项目遇到的坑相关推荐
- 升级Vue2.0后prop不能双向绑定的解决办法
前言 从Vue1.0升级到Vue2.0后,有很多改动,今天来讨论下prop没有了sync之后的解决方法. 从官方角度来讲,为了规范数据流动,砍掉了.sync,目的很明显,阻止子组件影响父组件的数据. ...
- 解决升级Flutter3.0后出现警告Operand of null-aware operation ‘!‘ has type ‘WidgetsBinding‘ which excludes null
出现场景 将Flutter SDK升级到3.0,运行时报以下警告. 虽然不影响程序的运行,但是看着很烦. lib/stress_test/stress_test_page.dart:120:22: W ...
- 高德导航升级6.0后应用crash解决
1.问题 公司应用有集成高德地图地位和导航,因为高德开发者平台给出的建议是用最新包引入方式,默认升级到最新jar包后应用持续发生native crash.由于时间有限就想直接回退到之前的版本,但是高德 ...
- php7.4升级php8.0后重启系统网站访问异常问题
安装完php8.0之后也禁用了旧版本php: 禁用php sudo a2dismod php7.4 启用php sudo a2enmod php8.0 也重启了php8.0-f ...
- android9.0系统耗电量大,升级EMUI9.0后太耗电?五招帮你摆平!
*本文来自花粉俱乐部@小超人_江江 如果感觉你的荣耀Magic 2手机电量不够用怎么办?几条妙招解决你的小麻烦,EMUI9.0系统手机也可参考 1.尝试关闭语音唤醒功能 设置方法:依次选择[设置]-[ ...
- 手机升级8.0后,黑域启用失败
今天手机系统升级到8.0,却悲催的发现黑域启动不起来了. 于是便找到这个解决方案,亲测成功. 1.正常在电脑上激活黑域后不要拔掉数据线. 2.将手机接入电脑的模式改为纯充电模式. 3.拔掉电源线,即可 ...
- 三星 android 5.0 root,三星note3全系列新机升级5.0后root权限方法
N9008刷机包下载 近期索尼note3全系列新机 n9006.n9008.n9009.n900.n9008v等三星note3机型将全线更新到了安卓5.0系统,那么索尼note3更新5.0以后怎么获取 ...
- tengine2.2.2 升级http2.0 后 springmvc 上传附件为空的,可能存在的原因
tengine2.2.2原先关配置为: client_max_body_size 10m; client_body_buffer_size 128k; tengine2.2.2 springmvc 采 ...
- springboot1.5升级2.0后遇到的问题
https://blog.csdn.net/zhiquanzhou/article/details/80566630
最新文章
- 电子学会青少年编程等级考试Python一级题目解析11
- Scala 类型的类型(一)
- Hibernate的配置详解
- HTML表单提交规则
- 牛客网_PAT乙级1004_福尔摩斯的约会 (20)
- WIFI无线路由器的五种工作模式
- MySQL故障检测_mysql主从故障检测处理脚本
- 腾讯推出基于区块链存证的“点亮莫高窟”活动
- linux link path walk,python之os.walk()与os.path.walk()
- H3C Wx5004无线控制器修改SSID名称
- Mac Dotnet 坑 - Donet EF
- EPICS Archiver Appliance在Debian11下安装文档
- c语言输入星期的首字母,10、实现中英文的转换,输入汉语星期几,输出该星期的英文名。可以用指针数组处理字符串。C语言...
- 微信网络营销 你造吗?
- Python还原CryptoJs_DES_CBC模式_js逆向学习
- yep chain千亿级航母起航——与同济大学达成战略合作
- scrapy爬虫框架简绍与安装使用
- 阿里云部署Django项目发送邮件时,端口25,465,587上的坑
- IDEA光标变成白色粗条的问题解决
- md文件撰写使用格式