首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果连接重新启动,则重新连接到数据库

如果连接重新启动,则重新连接到数据库
EN

Stack Overflow用户
提问于 2015-10-04 16:56:13
回答 2查看 1.6K关注 0票数 1

我有JBoss,使用JNDI连接数据库,但数据库重启时,需要重启JBoss才能使用新的连接池,有没有属性可以重连,请帮助

代码语言:javascript
复制
 <subsystem xmlns="urn:jboss:domain:datasources:1.2">
        <datasources>
            <datasource jta="false" jndi-name="java:jboss/datasources/ams" pool-name="OracleDS" enabled="true" use-ccm="false">
                <connection-url>jdbc:oracle:thin:@rhhqrac01scant:1521/testingenv</connection-url>
                <driver-class>oracle.jdbc.OracleDriver</driver-class>
                <driver>oracle</driver>
                <pool>
                    <min-pool-size>100</min-pool-size>
                    <max-pool-size>150</max-pool-size>
                    <prefill>true</prefill>
                    <flush-strategy>FailingConnectionOnly</flush-strategy>
                </pool>
                <security>
                    <user-name>ams</user-name>
                    <password>testpassword</password>
                </security>
                <validation>
                    <check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
                    <validate-on-match>false</validate-on-match>
                    <background-validation>false</background-validation>
                </validation>
                <timeout>
                    <set-tx-query-timeout>false</set-tx-query-timeout>
                    <blocking-timeout-millis>0</blocking-timeout-millis>
                    <idle-timeout-minutes>0</idle-timeout-minutes>
                    <query-timeout>0</query-timeout>
                    <use-try-lock>0</use-try-lock>
                    <allocation-retry>0</allocation-retry>
                    <allocation-retry-wait-millis>0</allocation-retry-wait-millis>
                </timeout>
                <statement>
                    <share-prepared-statements>false</share-prepared-statements>
                </statement>
            </datasource>
            <drivers>
                <driver name="oracle" module="com.oracle.ojdbc6">
                    <xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class>
                </driver>
            </drivers>
        </datasources>
    </subsystem>
EN

回答 2

Stack Overflow用户

发布于 2015-10-04 18:07:11

您可以将其添加到数据源标签下

代码语言:javascript
复制
<check-valid-connection-sql>select 1</check-valid-connection-sql>
票数 0
EN

Stack Overflow用户

发布于 2015-10-04 18:32:20

尝尝这个

代码语言:javascript
复制
 <validate-on-match>true </validate-on-match>

知道这会恢复连接,但不幸的是,它会给数据库带来更多负载,因为每次从池中检出连接时,它都会验证连接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32931737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档