我正在使用以下代码与我的applicationcontext文件中指定的Hibernate和Java进行数据库连接,
<bean id="DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=UTF-8" />
<property name="user" value="admin" />
<property name="password" value="pass" />
<property name="maxPoolSize" value="10" />
<property name="maxStatements" value="10" />
<property name="minPoolSize" value="5" />
<property name="initialPoolSize" value="10" />
<property name="maxIdleTime" value="120" />
<property name="numHelperThreads" value="1" />
<property name="preferredTestQuery" value="SELECT 1" />
</bean>
某个时候服务器上的会出现以下错误
com.mchange.v2.resourcepool.BasicResourcePool $ AcquireTask运行 警告: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@198c333 -
收购尝试失败!!!清除待处理的收购。一边试试 为了获得所需的新资源,我们未能取得成功 最大允许获取尝试次数(30)。 上次获取尝试异常:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:用户admin已经超过'max_user_connections'活动连接
任何人都可以让我知道我哪里出错了
答案 0 :(得分:0)
您的数据库看起来有配置问题。您的数据库可能无法让同一用户10同时连接。也许您可以尝试将maxPoolSize
和minPoolSize
减少为1,这样您就可以看到真正的问题。(因为您看到的异常只是给出的最后一个例外)
答案 1 :(得分:-1)