当前位置: 首页 > 面试题库 >

Jboss数据源中的数据库故障转移

陆昂然
2023-03-14
问题内容

在JBoss数据源中,如何为我想要的数据库故障转移提供多个连接字符串。

将有两个具有相同表的Mysql
db,即DB1和DB2。我想将数据插入DB1,如果DB1关闭,那么我需要将其插入DB2。在插入DB2期间,如果DB1出现了,我需要将其余数据插入DB1中。如何在JBoss中配置它?


问题答案:
<?xml version="2.0" encoding="UTF-8"?>
<!-- $Id$ -->

 <!--  Datasource config for MySQL using 3.0.9 available from:
    http://www.mysql.com/downloads/api-jdbc-stable.html
      -->
  <datasources>
    <local-tx-datasource>

      <jndi-name>MySqlDSTest</jndi-name>
      <use-java-context>true</use-java-context>
      <connection-url>jdbc:mysql:loadbalance://ip1,ip2:3306/dbname?</connection-url>
      <url-delimiter>,</url-delimiter>
      <driver-class>com.mysql.jdbc.Driver</driver-class>
      <connection-property name="readOnly">false</connection-property>
      <autoReconnect>true</autoReconnect>
      <failOverReadOnly>false</failOverReadOnly>
      <user-name>userName</user-name>
      <password>password</password>
      <check-valid-connection-sql>selcect count(*) from TEST_TAB</check-valid-connection-sql>
      <maxReconnects>0</maxReconnects>
      <initialTimeout>15</initialTimeout>
      <idle-timeout-minutes>0</idle-timeout-minutes>
      <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>
      <!-- Advanced options for the MySQL Driver can be set with
              <connection-property name="property">value</connection-property>
        -->
      <min-pool-size>5</min-pool-size>
      <!-- Don't set this any higher than max_connections on your
           MySQL server, usually this should be a 10 or a few 10's
           of connections, not hundreds or thousands -->
      <max-pool-size>20</max-pool-size>
      <!-- Don't allow connections to hang out idle too long,
           never longer than what wait_timeout is set to on the
           server...A few minutes is usually okay here,
           it depends on your application
           and how much spikey load it will see -->

      <!-- If you're using Connector/J 3.1.8 or newer, you can use
           our implementation of these to increase the robustness
           "mysql-ds.xml" 64L, 3683C      of the connection pool. -->
      <exception-sorter-class-name>
         com.mysql.jdbc.integration.jboss.ExtendedMysqlExceptionSorter
      </exception-sorter-class-name>
      <valid-connection-checker-class-name>
         com.mysql.jdbc.integration.jboss.MysqlValidConnectionChecker
      </valid-connection-checker-class-name>
      <!-- sql to call when connection is created -->
      <new-connection-sql>select 1</new-connection-sql>
      <!-- sql to call on an existing pooled connection when it is obtained from pool -    MySQLValidConnectionChecker is preferred for newer drivers -->
      <check-valid-connection-sql>
        select 1
      </check-valid-connection-sql>
      <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml -->
      <metadata>
        <type-mapping>mySQL</type-mapping>
      </metadata>
    </local-tx-datasource>
  </datasources>

这将适用于jboss映射



 类似资料:
  • 我知道如何使2个数据源,但哪里是最好的地方,以处理逻辑什么时候它将使用哪一个。逻辑需要这样运行: 连接到主 如果存在连接问题,或者资源不可用,或者连接超时,请尝试重新连接到主服务器。 如果主服务器无法连接,请尝试连接到辅助服务器 如果辅助设备无法连接,请继续重试步骤2和步骤3,持续X分钟。 在Spring服务中处理这个问题是最好的/可能的吗?我应该有一个不同的服务来处理这个逻辑,而我的其他服务使用

  • c3p0 Java数据库池,故障转移配置https://docs.genesys.com/documentation/composer/8.1.4/help/connectionPooling application.properties:(出现错误)

  • 本文向大家介绍Oracle ASM数据库故障数据恢复解决方案,包括了Oracle ASM数据库故障数据恢复解决方案的使用技巧和注意事项,需要的朋友参考一下 一、故障描述   ASM磁盘组掉线 ,ASM实例不能mount。ASM磁盘组有4个500G的磁盘组成,数据库和ASM软件为10.2.0.1,急需恢复oracle数据库。 二、故障分析   分析组成ASM磁盘组的磁盘,取出ASM元数据,对元数据进

  • im试图创建一个新的数据源,并从java代码中“查找”。首先,我创建了jboss-as-7.1.0.final\modules\com\mysql\main文件夹,并复制到其中的2个文件。mysql-connector-java-5.1.14-bin和module.xml My module.xml包含 其次,我在文件standalone.xml中添加了这个... 无论如何,当我启动我的jboss

  • 本文向大家介绍在SAP HANA中处理系统故障,数据库损坏,包括了在SAP HANA中处理系统故障,数据库损坏的使用技巧和注意事项,需要的朋友参考一下 在系统故障,数据库损坏或电源故障的情况下,使用持久层将数据库还原到HANA中的最新保存点。持久层负责数据和事务日志备份以及存储HANA系统的配置。 根据HANA系统配置中的“备份”设置进行数据和事务日志文件的备份。可以将其设置为分钟,小时和天,并且

  • 在大约14个工作小时后,我有一个云数据流管道失败,下面是一条神秘的日志消息: 谢了!