数据库重启后Jboss无法重新连接Mysql

Ale*_*xey 3 mysql jca jboss7.x

您好,我们使用 JBOSS AS 7.1.1 Final。简单的 JPA Hibernate 架构与 Mysql。

xa-datasource 看起来像:

<xa-datasource jndi-name="java:jboss/datasources/db" pool-name="db" enabled="true" use-java-context="true">
<xa-datasource-property name="ServerName">
localhost
</xa-datasource-property>
<xa-datasource-property name="DatabaseName">
db
</xa-datasource-property>
<xa-datasource-property name="User">
root
</xa-datasource-property>
<xa-datasource-property name="Password">
xxxxx
</xa-datasource-property>
<xa-datasource-property name="AutoReconnectForPools">
true
</xa-datasource-property>
<xa-datasource-property name="FailOverReadOnly">
false
</xa-datasource-property>
<xa-datasource-property name="MaxReconnects">
100
</xa-datasource-property>
<xa-datasource-property name="ReconnectAtTxEnd">
true
</xa-datasource-property>
<driver>com.mysql</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<validation>
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
<check-valid-connection-sql>select 1</check-valid-connection-sql>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
</validation>
</xa-datasource>
Run Code Online (Sandbox Code Playgroud)

MySQL重启后,JBOSS应该重新连接(reconnect),但是没有发生。请指教

use*_*304 5

这个对我有用。尝试添加这个:

<validation>
    <check-valid-connection-sql>select 1</check-valid-connection-sql>
    <background-validation>true</background-validation>
    <background-validation-millis>15000</background-validation-millis>
</validation>
Run Code Online (Sandbox Code Playgroud)