12.8. XA 数据源恢复


XA 数据源是可参与 XA 全局交易的数据源,由交易经理协调,并可在单个交易中跨越多个资源。如果其中一位参与者未能提交更改,则其他参与者中止交易并恢复交易发生前的状态。这是为了保持一致性,避免潜在的数据丢失或损坏。

XA 恢复是一个确保更新或回滚受交易影响的所有资源的过程,即使任何资源或交易参与者崩溃或不可用。XA 恢复发生,无需用户干预。

每个 XA 资源都需要关联一个恢复模块及其配置。恢复模块是执行恢复时执行的代码。JBoss EAP 自动注册 JDBC XA 资源的恢复模块。如果要实施自定义恢复代码,您可以使用 XA 数据源注册自定义模块。恢复模块必须扩展类 com.arjuna.ats.jta.recovery.XAResourceRecovery

12.8.1. 配置 XA 恢复

对于大多数 JDBC 资源,恢复模块自动与资源关联。在这些情况下,您只需要配置允许恢复模块连接到资源以执行恢复的选项。

下表描述了特定于 XA 恢复的 XA 数据源参数。这些配置属性可以在数据源创建期间或之后设置。您可以使用管理控制台或管理 CLI 进行设置。有关配置 XA 数据源的详情,请参阅修改 XA 数据源。

Expand
表 12.2. XA 恢复的数据源参数
属性描述

restore-username

用于连接资源以进行恢复的用户名。请注意,如果没有指定,将使用数据源安全设置。

restore-password

用于连接资源以进行恢复的密码。请注意,如果没有指定,将使用数据源安全设置。

recovery-security-domain

用于连接资源以进行恢复的安全域。

recovery-plugin-class-name

如果需要使用自定义恢复模块,将此属性设置为模块的完全限定类名称。模块应扩展类 com.arjuna.ats.jta.recovery.XAResourceRecovery

recovery-plugin-properties

如果您使用需要设置属性的自定义恢复模块,请将此属性设置为属性的逗号分隔 KEY=VALUE 对的列表。

禁用 XA 恢复

如果多个 XA 数据源连接到同一物理数据库,则通常只需要为其中一个配置 XA 恢复。

使用以下命令来禁用 XA 数据源的恢复:

/subsystem=datasources/xa-data-source=XA_DATASOURCE_NAME:write-attribute(name=no-recovery,value=true)
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部