数据库连接池

HTTP Status 500 - Could not open connection
type Exception report
message Could not open connection
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.hibernate.exception.GenericJDBCException: Could not open connection
org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:54)
......
......
 
 
root cause
java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:65)
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:527)
com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
......
......
 
 
 
root cause
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResourcePool@6df3d083 -- timeout at awaitAvailable()
com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1317)
com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
org.hibernate.service.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:141)
........
........

多次操作数据库后,会报出以上 could not open connection 错误,原因为没有配置数据库的连接池的最大最小连接数。h<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">

    <property name="driverClass" value="${jdbc.driverClass}"></property>
    <property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>
    <property name="user" value="${jdbc.user}"></property>
    <property name="password" value="${jdbc.password}"></property>
    <property name="maxPoolSize" value="100"></property>
    <property name="minPoolSize" value="20"></property>
    <property name="checkoutTimeout" value="120"></property>
</bean>

以上是在spring中配置的代码,也可以放在properties文件中。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Golang语言社区

Dynamic Nginx Router... in Go!

We needed a specialized load balancer at Nitro. After some study, Mihai Todor an...

1103
来自专栏码神联盟

框架 | SpringBoot项目发布部署外部tomcat服务器步骤

1K2
来自专栏一个会写诗的程序员的博客

第11章 Spring Boot应用监控第11章 Spring Boot应用监控小结

在实际的生产系统中,我们怎样知道我们的应用运行良好呢?我们往往需要对系统实际运行的情况(各种cpu,io,disk,db,业务功能等指标)进行监控运维。这需要耗...

2193
来自专栏IMWeb前端团队

React Router Load On Demand

本文作者:IMWeb 陈映平 原文出处:IMWeb社区 未经同意,禁止转载 It is frequently asked that how to lo...

2275
来自专栏10km的专栏

linux下用cmake对caffe静态编译时-static-libstdc++参数无效的问题

以下是用于cmake 生成 Makefile文件对Caffe进行静态库连接编译的shell脚本, #!/bin/bash # cmake 静态编译 caffe-...

4336
来自专栏IT进修之路

原 荐 Spring Boot 多库分布式事

1946
来自专栏杨建荣的学习笔记

由报警邮件分析发现的备库oracle bug(r7笔记第12天)

昨天到公司之后,收到两份封报警邮件,可以看到在早晨6:30左右主库的v$dataguard_status检查时发现了一个错误。然后再2分钟后就自动恢复了。 一般...

2586
来自专栏数据库新发现

Use Orastress! to test your database

http://www.eygle.com/special/Use.Orastress.2.Test.Oracle.db.htm

832
来自专栏Java3y

Druid数据库连接池就是这么简单

前言 本章节主要讲解Druid数据库连接池,为什么要学Druid数据库连接池呢?? 我的知识储备数据库连接池有两种->C3P0,DBCP,可是现在看起来并不够用...

40911
来自专栏IT进修之路

原 荐 SpringBoot整合mybati

1703

扫码关注云+社区