连接池的配置

最近遇到了一个奇怪的问题,使用了Apache的连接池,当数据库重启之后,就无法连接到数据库上了,开始以为是程序的问题,看了一些代码,无用。后经同事提示,在连接池的配置中加了一项:

    <parameter>
    <name>validationQuery</name>
        <value>SELECT 1</value>
    </parameter>

就Ok了,才明白这个是用来检查连接的,当访问量不大时,连接池中的连接足够用,它不会去申请新的连接,但原有的连接已经被重置了,也就是reset了,无法使用,因此对于使用连接池,应该加上面的配置,以检查数据库连接。

同样,使用spring来配置连接池的时候也应该加上:

<property name="validationQuery">
<value>SELECT 1</value>
</property>

防止数据库重新启动后出现问题。

你可能感兴趣的:(连接池)