系统症状:

某个功能报错:

但是数据库链接并没有用完。重启一下tomcat就好了,但是过十几分钟又报错,如此反复。

怀疑是数据库连接泄露。于是加入下面的配置进行调查:

......

查到报错信息:

[ERROR] com.alibaba.druid.pool.DruidDataSource.removeAbandoned(DruidDataSource.java:2664):Druid-ConnectionPool-Destroy-1730184957 - abandon connection, owner thread: http-apr-8181-exec-186, connected at : 1560136511767, open stackTrace

at java.lang.Thread.getStackTrace(Thread.java:1559)

at com.alibaba.druid.pool.DruidDataSource.getConnectionDirect(DruidDataSource.java:1311)

at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1233)

at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1223)

at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:90)

at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:246)

at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:377)

at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:461)

at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:277)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)

at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:673)

atcom.xxxx.controller.FileController.getxxxxjrxx(FileController.java:382)

......

ownerThread current state is BLOCKED, current stackTrace

at java.lang.Throwable.printStackTrace(Throwable.java:655)

at java.lang.Throwable.printStackTrace(Throwable.java:643)

at java.lang.Throwable.printStackTrace(Throwable.java:634)

at com.xxx.service.xxxServiceImpl.getxxx(Btjc01ServiceImpl.java:544)

at com.xxx.service.xxxServiceImpl$$FastClassBySpringCGLIB$$5df1f982.invoke()

最后查到是线程被某个外部接口给 BLOCKED,导致其持有的数据库连接无法释放,从而导致数据库连接泄露,从而导致该问题。

其实就是 数据库连接 的 onwerThread 被 blocked了。

mysql连接泄露 定位_数据库连接泄露一例相关推荐

  1. mysql连接池设计_数据库连接池(基于MySQL数据库)

    使用JDBC是怎么保证数据库客户端和数据库服务端进行连接的? 通过代码: conn=DriverManager.getConnection(url, username, password); JDBC ...

  2. mysql连接密码加密_数据库连接用户名和密码加密

    我们的工程项目往往是使用云数据库的,连接使用账号密码就行了,但是程序里直接有密码是十分不安全的 这里我参考了别人的博客对这个问题进行解决 1. 需求背景 我们在开发应用时,需要连接数据库,一般把数据库 ...

  3. mysql连接字符串 端口_数据库连接字符串 端口号

    如何获取SQL server数据库的连接字符串 步骤:1.新建一个txt文本文档,然后把后缀名改为udl2.打开 新建文本文档. udl ,并选择相应的数据库进行连接,之后点击 "测试连接& ...

  4. c3p0 mysql 连接池配置文件_数据库连接池c3p0的使用

    原标题:数据库连接池c3p0的使用 来源:java联盟 https://mp.weixin.qq.com/s/5Tbkf8dVFfH8AvtqWl-7Xg 程序员共读整理发布,转载请联系作者获得授权 ...

  5. oracle mysql连接池配置文件_数据库连接池两种配置方式详解

    数据库连接池: 负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接 ...

  6. mysql连接10061错误_数据库连接错误出现10061是怎么回事?

    展开全部 数据库连32313133353236313431303231363533e4b893e5b19e31333363396461接错误出现10061解决方法如下: 1.在服务端MySQL文件夹下 ...

  7. mysql连库串_数据库连接串整理 - osc_ac5z111b的个人空间 - OSCHINA - 中文开源技术交流社区...

    常用JDBC驱动与连接字符串 MySQL driver:com.mysql.jdbc.Driver url:jdbc:mysql://localhost:3306/mydb MySQL url格式:j ...

  8. golang mysql连接池原理_[Go] golang实现mysql连接池

    golang中连接mysql数据库,需要使用一个第三方类库github.com/go-sql-driver/mysql,在这个类库中就实现了mysql的连接池,并且只需要设置两个参数就可以实现 一般连 ...

  9. asp.net mysql连接字符串_ASP.NET数据库连接字符串总结

    关于数据库链接字符串的相关知识,我们介绍过很多,建议大家看看这两篇文章,<深入了解SQL Server连接字符串>和<MySql连接字符串的说明>,供参考.下面介绍ASP.NE ...

  10. mysql 连接池的作用,数据库连接池介绍、主要参数设置、作用

    数据库连接池 dataSource 1.平时用的数据库类型?? dbcp  c3p0 2.连接池需要那些配置?? 初始化连接数量initialSize 最大连接数maxActive 最大空闲连接数ma ...

最新文章

  1. 2018第三届中国数字化零售创新国际峰会9月即将震撼来袭
  2. MATLAB 中RMSE和MAPE的计算方法
  3. Python 之 Python2 和 Python3 的区别
  4. 在编码中熟练使用JDK文档
  5. Mac Pro m1 安装 brew/eclipse/visual stadio code/nodejs/git
  6. 香港中文大学MMLab期待优秀同学加入~
  7. Protobuf语言指南
  8. GemBox Spreadsheet Professional 2.9
  9. croppic 图片裁剪
  10. Python基础--01数据类型-标识符命名规范
  11. 2021-08-18 HarmonyOS实战 CommonDialog的使用
  12. 云原生的高效生产工具 ---vagrant
  13. Paddleocr部署进一步优化
  14. 高德地图海量点 API 初探
  15. 微信小程序-电影app程序遇到得问题
  16. 0X000000该内存不能为read written的解决思路(艾孜尔江撰稿)
  17. uniapp中onShow比onLoad先渲染数据
  18. 卸载Symantec Endpoint Protection, 无需password的卸载方法
  19. CSAPP深入理解计算机——bomblab(2018)
  20. 开源GIS系统(转载)

热门文章

  1. 百度搜索关键词自动提交
  2. 军事 - [纪录片]古兵器大揭秘
  3. windows 编程的学习次序
  4. 等额本金等额本息计算器
  5. 18位身份证的正则表达式并说明
  6. iNav飞控AOCODARC-F7MINI固件编译
  7. ADAS高级驾驶辅助系统功能介绍
  8. springboot集成solr实现全局搜索系列
  9. 回顾过去。。展望未来
  10. linux删除不了777文件,Linux使用着需要理解chmod -r 777文件权限