retrieve在JAVA_Cause: java.sql.SQLException: Could not retrieve transation read-only status server
背景
最近在部署一套完整的项目,部署过程中遇到很多的问题,在来总结一些如标题的这个错误!
环境说明:
使用分布式数据库,使用的是mysql!
### Cause: java.sql.SQLException: Could not retrieve transation read-only status server
; SQL []; Could not retrieve transation read-only status server; nested exception is java.sql.SQLException: Could not retrieve transation read-only status server, dubbo version: 2.5.3, current host: 127.0.0.1
org.springframework.dao.TransientDataAccessResourceException:
### Error querying database. Cause: java.sql.SQLException: Could not retrieve transation read-only status server
问题排查
因为项目的代码没有改动,目前这一套代码已经在生产上运行了,目前出现错误的原因在之前生产上没有遇到。
1、报错了,网上查相关资料
通过在网上查找资料,
有两种说法:
1)、修改 数据库的隔离级别,将 REPEATABLE-READ修改为READ-COMMITED.
2)、数据库和应用中数据库驱动(mysql驱动版本不一致)
2、查看数据库信息
mysql> SHOW VARIABLES LIKE '%iso%';
+-----------------------+-----------------+
| Variable_name | Value |
+-----------------------+-----------------+
| transaction_isolation | REPEATABLE-READ |
| tx_isolation | REPEATABLE-READ |
+-----------------------+-----------------+
mysql> select version();
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 662239
Current database: shop
+-----------------------------------+
| VERSION() |
+-----------------------------------+
| 5.7.21-dbproxy-4.0-20180412155855 |
+-----------------------------------+
发现数据库配置的确是REPEATABLE-READ,因为我不能随便改动这个数据库,数据库隔离级别这个业务有紧密的关系,那么首先从版本是否匹配进行解决,问了相关同事:
问:你好, 5.7.21-dbproxy-4.0-20180412155855这个 版本的对mysql驱动有要求,最低mysql驱动是支持多少 ?
答:5.1.27~5.1.35
查看了一下目前项目的mysql驱动配置,发现是 5.1.24 ,版本低于要求的版本。
3、 升级mysql驱动
对mysql版本进行升级,升级为 5.1.30,重新部署,发现还是报错,于是又升级到 5.1.32,部署后,发现不报错了。问题解决了!
总结
解决一个问题的方法可能有多种,选择一个最合适的方法,比如上面的这个问题,可能解决的方法的有两个,一个是修改mysql的隔离级别,一个修改应用的mysql驱动版本,那个对业务的影响更小的,那肯定是修改mysql驱动版本。
如果您觉得这篇博文对你有帮助,请点赞或者喜欢,让更多的人看到,谢谢!
如果帅气(美丽)、睿智(聪颖),和我一样简单善良的你看到本篇博文中存在问题,请指出,我虚心接受你让我成长的批评,谢谢阅读!
祝你今天开心愉快!
欢迎访问我的csdn博客,我们一同成长!
不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!
© 每天都在变得更好的阿飞
retrieve在JAVA_Cause: java.sql.SQLException: Could not retrieve transation read-only status server相关推荐
- Cause: java.sql.SQLException: Could not retrieve transation read-only status server
背景 最近在部署一套完整的项目,部署过程中遇到很多的问题,在来总结一些如标题的这个错误! 环境说明: 使用分布式数据库,使用的是mysql! ### Cause: java.sql.SQLExcept ...
- 使用DataX将mysql中做数据导出时 提示 java.sql.SQLException: Could not retrieve transation read-only status server
原因是我的数据库是8.0以上版本,但是datax本身提供的jar包是5.1版本,将datax/plugins目录下的reader/writer中的mysqlreader/mysqlwriter的lib ...
- 问题解决:java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
处理Sql查询遇到这样一个问题(数据库是MySQL),有个字段定义类型是datetime,且非空无默认值, 通过PHPMyAdmin界面填充测试数据的时候没有理会这个字段,看到个小警告,插入成功, 但 ...
- java.sql.SQLException: Protocol violation 解决方法
本篇承接这一篇 :java.sql.SQLException: Protocol violation 问题解析 问题描述 应用可以正常启动,但是运行一段时间时候偶尔会出现这个错误. java.sql. ...
- php column not found,java.sql.SQLException: Column 'cloumn name' not found.
Hi, My system configuration: Mandrake 9.0 + Tomcat 4.1.24 + MySQL 4.0.12. + Apache [問題] 我有一隻Servlet ...
- java.sql.SQLException: Data truncation: Truncated incorrect DOUBLE value
mysql 报这个异常:java.sql.SQLException: Data truncation: Truncated incorrect DOUBLE value update 表名 set c ...
- HikariPool使用MySQL/MariaDB数据库报错解决:java.sql.SQLException: Access denied for user 'root'@'localhost' (u
在使用HikariPool连接到我的数据库时报错如下,完整的报错放在最后: 2019-06-25 20:24:26.048 ERROR 18204 --- [nio-8080-exec-9] com. ...
- java.sql.SQLException: Lock wait timeout exceeded
2019独角兽企业重金招聘Python工程师标准>>> 先说我我的解决方法:找到锁住的线程然后kill掉. mysql> kill thr_id; 下面简单分析一下到底应该ki ...
- 已解决Cause: java.sql.SQLException: Incorrect string value: ‘\\xF0\\x9F\\x8C\\xB8 \\xE5...‘报错
保存订单存入数据库时,报错: "\n### Error updating database. Cause: java.sql.SQLException: Incorrect string v ...
最新文章
- 10.2.2移动产品离线功能等具体解释----暨4月8日移动《在离线一体化》公开课Qamp;A...
- 关于IE控件闪烁解决方案
- a链接中 JS弹出确认对话框方法
- python生成gif【简明教程】
- Introduction to Mathematical Thinking - Week 3
- 7-19上午刷题未知点集合
- java抽取pdf_java 抽取 word,pdf 的四种武器
- 为什么数字中台是企业应用新基建?
- gephi 使用mysql数据,gephi练习数据
- python3 manage.py runserver 0.0.0.0:8000 没反应
- linux下安装opencv4.4.0
- pythonunicode和str_python unicode 和 str 类型的关系
- mysql fetch field_PHP mysql_fetch_field() 函数
- ToolStripStatusRollingLabel——滚动显示状态栏标签
- 福建省队集训被虐记——DAY3
- 校园网下桥接无法上网原理分析如何破解
- MTK平台sip信令的查看和volte的故障
- SQL- With as 用法
- 统计|如何建立单总体方差的置信区间
- 国际金融统计 (IFS) 数据库1978-2020