摘要:当看到意识到连接异常,但与当前方法连接同一个库的其他方法可以执行成功,所以数据库服务也是正常的。最终发现原因排查的方法中有其他操作发送请求,稍微有点耗时,但整个方法一分钟之类肯定能处理完。最终解决办法此处的单位应该是秒。
简述:
技术,spring+mysql....
新项目上线碰到一个问题,具体现象为执行一个方法时报异常,异常信息如下:
2019-08-20 09:46:08.917[ERROR][Log4jFilter.java:152][DubboServerHandler-192.168.12.156:28104-thread-207] {conn-10670, pstmt-21062} execute error. delete from Dpgd where shco = ? java.sql.SQLException: Could not retrieve transation read-only status server .... at java.lang.Thread.run(Thread.java:745) Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 7,603 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago. ... at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1038)
最开始只看到Could not retrieve transation read-only status server没看到下面的Communications link failure,以为是在代码中手动设置事务状态为只读或者事务回滚,后来查代码也没发现。
当看到Communications link failure意识到连接异常,但与当前方法连接同一个库的其他方法可以执行成功,所以数据库服务也是正常的。
最终发现原因:排查的方法中有其他操作发送http请求,稍微有点耗时,但整个方法一分钟之类肯定能处理完。
最终解决办法:
show global variables like "%timeout%"; SET GLOBAL wait_timeout=86400;
此处的单位应该是秒。
当前处理的默认值是5
设置86400可能有点极端
其他客户都设置了,就这个可能测试环境,配置的时候忘记改参数了。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/110721.html
摘要:查看资料的过程中发现连接池是有两种的连接池与连接池。在分配对象或对象返回的时候,会锁定全部连接池。连接池使用接口获取底层连接连接池可以防止饥饿。当连接返回时,池就将唤醒正确的等待线程。 项目部署在tomcat后每隔一段时间便会报错 Cause: java.sql.SQLException: Could not retrieve transation read-only status ...
摘要:网页删除想要删除队列中的消息,是可以通过的网页来操作的。但是这种方式存在一个问题,就是当消息多的时候点击,页面会卡死。在节点恢复正常之前,持久化队列将不可用。所以这次我想要先清除指定队列的消息即可。网上搜了一下版本的消息。 前因 在公司最新的项目上,由我们技术总监搭了一套框架,其中有使用RabbitMq来监听监听写事件,这也是我第一次使用RabbitMq。因为在开发的过程中,有些事件会...
摘要:起因之前在网上看文章提到说,通过的方式安装,可能安装不是最新版本的情况,考虑到在下第一次安装,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习,索性练习下卸载重装的过程。 起因 之前在网上看文章提到说,通过apt-get的方式安装nginx,可能安装不是最新版本的情况,考虑到在Ubuntu下第一次安装nginx,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习nginx,索性练...
摘要:起因之前在网上看文章提到说,通过的方式安装,可能安装不是最新版本的情况,考虑到在下第一次安装,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习,索性练习下卸载重装的过程。 起因 之前在网上看文章提到说,通过apt-get的方式安装nginx,可能安装不是最新版本的情况,考虑到在Ubuntu下第一次安装nginx,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习nginx,索性练...
摘要:起因之前在网上看文章提到说,通过的方式安装,可能安装不是最新版本的情况,考虑到在下第一次安装,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习,索性练习下卸载重装的过程。 起因 之前在网上看文章提到说,通过apt-get的方式安装nginx,可能安装不是最新版本的情况,考虑到在Ubuntu下第一次安装nginx,以后肯定会有卸载重新安装新版本的需求,刚好刚开始学习nginx,索性练...
阅读 3147·2021-09-26 09:46
阅读 1794·2021-09-13 10:23
阅读 2184·2021-09-02 09:47
阅读 3636·2021-08-16 11:01
阅读 1078·2021-07-25 21:37
阅读 1381·2019-08-30 15:56
阅读 370·2019-08-30 13:52
阅读 1837·2019-08-27 14:27