1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > jboss连接池 断开后自动重连功能

jboss连接池 断开后自动重连功能

时间:2019-01-31 00:00:43

相关推荐

jboss连接池 断开后自动重连功能

最近客户现场的测试环境连的数据库极不稳定,经常会出现需要重新启动数据库的情况, 但是一旦重启数据库 则会出现 提示 ,执行sql错误,原因就是datasource 没有获取新的连接!

那么解决办法就是怎样让jboss每次提供连接的时候都给我们可用的最新的连接!

文章目录

一、环境配置二、配置文件路径三、添加重连标签四、配置截图五、配置后的文件总览六、其他解决办法6.1. Jboss数据库连接断开自动重连6.2. Jboss配置自动重连数据库

一、环境配置

二、配置文件路径

在数据源standalone.xml配置文件中添加此标签即可

/app/wildfly-10.1.0.Final/standalone/configuration/standalone.xml

三、添加重连标签

<validation> <check-valid-connection-sql>select 1 from dual</check-valid-connection-sql> </validation>

四、配置截图

五、配置后的文件总览

<subsystem xmlns="urn:jboss:domain:datasources:1.0"><datasources><datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"><connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url><driver>h2</driver><security><user-name>sa</user-name><password>sa</password></security></datasource><datasource jndi-name="java:/comp/env/siniteksirm" pool-name="siniteksirm" enabled="true" use-java-context="true"><connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url><driver>oracle</driver><pool><min-pool-size>10</min-pool-size><max-pool-size>100</max-pool-size></pool><security><user-name>broker</user-name><password>broker</password></security><validation><check-valid-connection-sql>select 1 from dual</check-valid-connection-sql></validation></datasource><drivers><driver name="h2" module="com.h2database.h2"><xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class></driver><driver name="oracle" module="com.oracle.jdbc"><xa-datasource-class>oracle.jdbc.xa.OracleXADataSource</xa-datasource-class></driver></drivers></datasources></subsystem>

六、其他解决办法

6.1. Jboss数据库连接断开自动重连

Jboss默认配置是数据库连接端口后,服务就会出现异常,无法访问,此时必须重启Jboss服务才能重新连接上数据库。

jboss/server/defult/deploy/oracle-ds.xml中加入:

<new-connection-sql>select 1 from dual</new-connection-sql><check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>

配置后的文件总览

<?xml version="1.0" encoding="utf-8"?><datasources> <local-tx-datasource> <jndi-name>OracleDS</jndi-name> <connection-url>jdbc:oracle:thin:@172.30.26.44:1521:orcl</connection-url> <driver-class>oracle.jdbc.driver.OracleDriver</driver-class> <user-name>hadiandev</user-name> <password>hadiandev</password> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name> <metadata> <type-mapping>Oracle9i</type-mapping> <min-pool-size>5</min-pool-size> <max-pool-size>20</max-pool-size> <idle-timeout-minutes>1</idle-timeout-minutes> <track-statements/> <prepared-statement-cache-size>32</prepared-statement-cache-size> <check-valid-connection-sql>select 1 from dual</check-valid-connection-sql> <new-connection-sql>select 1 from dual</new-connection-sql> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name> <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name> </metadata> </local-tx-datasource> </datasources>

6.2. Jboss配置自动重连数据库

<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>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。