项目数据库源使用druid
项目启动时,连接数据库时报错:Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"
即连接数过多;
解决方法:暂时将数据库连接数改小一点
具体方法:
<bean id="baseDataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
........
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="3" />
<property name="minIdle" value="3" />
<property name="maxActive" value="3" />
........
修改maxActive的值为小一点的数,比如3,重启项目即可;
我们了解下配置的具体意思:
| initialSize | 0 | 初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时 |
| maxActive | 8 | 最大连接池数量 |
| maxIdle | 8 | 已经不再使用,配置了也没效果 |
| minIdle | 最小连接池数量 | |
| maxWait | 获取连接时最大等待时间,单位毫秒。配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock |
本文介绍了一个关于Druid数据库连接池配置不当导致的“Too many connections”错误案例。通过调整最大连接数(maxActive),成功解决了项目启动时因连接数过多引发的问题。文章还解释了关键配置项如initialSize、maxActive等的作用。
856

被折叠的 条评论
为什么被折叠?



