数据库重启后需要重新启动Tomcat。

6

我有一个部署在Tomcat 7上的Web应用程序。我已经按照以下方式配置了我的数据库池。

<Resource name="UserDatabase" auth="Container"
          type="org.apache.catalina.UserDatabase"
          description="User database that can be updated and saved"
          factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
          pathname="conf/tomcat-users.xml" />

<Resource type="javax.sql.DataSource"
   name="jdbc/TEST"
   factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
   driverClassName="com.mysql.jdbc.Driver"
   url="jdbc:mysql://localhost:3306/testdb?zeroDateTimeBehavior=convertToNull"
   username="test"
   password="test"
   initialSize="10"
   maxActive="100"
   maxIdle="50"
   minIdle="10"/>

这个配置可以很好的运行。 但我希望设置我的数据库池,使得当数据库服务器因一些故障而停机一段时间后重新启动时,数据库池能够自动重新连接。


请尝试使用包含重新连接方法的c3p0 jar文件。 - muthukumar
2个回答

1
尝试在您的URL中添加

?autoReconnect=true


1
我找到了这个问题的答案。以下配置解决了这个问题。
<Resource type="javax.sql.DataSource"
   name="jdbc/TEST"
   factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
   driverClassName="com.mysql.jdbc.Driver"
   url="jdbc:mysql://localhost:3306/testdb?zeroDateTimeBehavior=convertToNull"
   validationQuery="select 1"
   validationInterval="30000"
   testWhileIdle="true"
   testOnBorrow="true"
   testOnReturn="false"
   username="test"
   password="test"
   initialSize="10"
   maxActive="100"
   maxIdle="50"
   minIdle="10"/>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接