56.2. 在 Oracle WebLogic Server 中配置 JDBC 数据源
数据源是一个对象,它允许 Java 数据库连接(JDBC)客户端(如应用服务器)与数据库建立连接。应用程序在 Java 命名和目录接口(JNDI)树或本地应用程序上下文中查找数据源,并请求数据库连接来检索数据。您必须为 Oracle WebLogic Server 配置数据源,以确保在服务器和指定数据库之间进行适当的数据交换。
通常,使用 Red Hat Process Automation Manager 的解决方案在单个事务中管理多个资源。用于异步作业、事件和计时器的 JMS,例如:在确保数据原子性和一致性结果时,Red Hat Process Automation Manager 需要数据源中的 XA 驱动程序。如果监听器内存在针对不同架构的事务代码,或者从 jBPM 引擎提供的 hook 派生出来,则还需要一个 XA 驱动程序。
不要使用非 XA 数据源,除非您正面没有参与单一事务的多个资源。
先决条件
- 您要用于创建数据库连接的 JDBC 驱动程序会在您要部署数据源的所有服务器上安装。一些 JDBC 驱动程序安装在 Oracle WebLogic Server 中,如用于 DB2 的 WebLogic 品牌数据直接 JDBC 驱动程序、Informix、MS SQL Server 和 Sybase。有关 JDBC 驱动程序的更多信息,请参阅 Oracle 帮助中心中的将 JDBC 驱动程序与 WebLogic 服务器搭配使用。
流程
进入红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉列表中选择产品和版本:
- 产品: 流程自动化管理器
- Version: 7.13.5
- 下载 Red Hat Process Automation Manager 7.13.5 附加组件。
完成以下步骤以准备数据库:
-
在临时目录中提取
rhpam-7.13.5-add-ons.zip
,如TEMP_DIR
。 -
提取
TEMP_DIR/rhpam-7.13.5-migration-tool.zip
。 -
将您的当前目录更改为
TEMP_DIR/rhpam-7.13.5-migration-tool/ddl-scripts
目录。此目录包含多种数据库类型的 DDL 脚本。 将您的数据库类型的 DDL 脚本导入到您要使用的数据库中,例如:
psql jbpm < /ddl-scripts/postgresql/postgresql-jbpm-schema.sql
注意如果您与 Spring Boot 结合使用 PostgreSQL 或 Oracle,则必须导入对应的 Spring Boot DDL 脚本,如
/ddl-scripts/oracle/oracle-springboot-jbpm-schema.sql
或/ddl-scripts/postgresql/postgresql-springboot-jbpm-schema.sql
。
-
在临时目录中提取
-
在 WebLogic 管理控制台中,导航到 Change Center
Lock & Edit。 -
在 Domain Structure 下,点 Services
Data Sources。 -
在 Summary of Data Sources 页面中,点击 New
Generic Data Source。 在 JDBC Data Sources Properties 页面中,输入或选择以下信息:
-
Name: 输入此 JDBC 数据源的名称。每当引用此数据源时,此名称在 配置文件(
config.xml
)中以及整个管理控制台中使用。 - JNDI Name: 输入要绑定到此 JDBC 数据源的 JNDI 路径。应用程序在保留连接时,按此名称查找 JNDI 树上的数据源。
- 数据库类型: 选择您要连接的数据库的 DBMS。如果没有列出您的 DBMS,请选择" 其他 "。
-
Name: 输入此 JDBC 数据源的名称。每当引用此数据源时,此名称在 配置文件(
- 点 Next 继续。
- 选择 您要用来连接到数据库 的数据库驱动程序。该列表包含所选 DBMS 的通用 JDBC 驱动程序,以及之前安装的任何其他 JDBC 驱动程序。
在 Transaction Options 页面中,保留选中 Supports Global Transactions 选项,然后从可用的事务选项中选择。您还可以清除此复选框以在这个数据源中禁用(忽略)全局事务。在大多数情况下,您应保留选择的选项以实现最佳数据效率。
- two-Phase Commit: 选择该选项以启用标准 XA 处理。只有在选择 XA JDBC 驱动程序进行数据库连接时,此选项才可用。
- Logging Last Resource: 选择这个选项,以启用非 XA JDBC 连接,以使用日志记录 Last Resource(LLR)事务优化进行全局事务。建议使用这个选项替换两个Phase Commit。只有在选择非XA JDBC 驱动程序进行数据库连接时,此选项才可用。
- 模拟双Phase Commit: 选择此选项以启用非 XA JDBC 连接,以模拟使用 JTA 进行分布式事务的参与。只有在应用程序可以容忍 Heuristic 条件时,才选择此选项。只有在选择非XA JDBC 驱动程序进行数据库连接时,此选项才可用。
- One-Phase Commit: 选择此选项可启用非 XA 连接,以参与到全球交易中,作为唯一的交易参与者。只有在选择非XA JDBC 驱动程序进行数据库连接时,此选项才可用。
- 点 Next 继续。
在 Connection Properties 页面中,输入以下属性的值:
- service Name: 指定要连接到的数据库的服务名称。如果提供多个数据源,则每个数据源必须相同。只有在为 Oracle Real Application Clusters(RAC)选择了可用 service-instance 连接驱动程序之一时,此字段才可用。
- 数据库名称: 输入您要连接的数据库名称。确切的数据库名称要求因 JDBC 驱动程序和 DBMS 而异。
- 主机名: 输入托管数据库的服务器的 DNS 名称或 IP 地址。如果您要创建 Oracle GridLink service-instance 连接,如果提供多个数据源,则每个数据源必须相同。
- 端口: 输入数据库服务器侦听连接请求的端口。
- 数据库用户名:输入您要用于数据源中的每个连接的数据库用户帐户名称。
- password /Confirm 密码: 输入数据库用户帐户的密码。
- Oracle.jdbc.DRCPConnectionClass: 可选,输入您的环境需要的数据库 Resident Connection Pooling(DCRP)连接类。
- 点 Next 继续。
在 Test Database Connection 页面上,查看连接参数,再单击 Test Configuration。
Oracle WebLogic Server 尝试创建从管理服务器到数据库的连接。连接测试的结果显示在页面的顶部。如果测试失败,请更正所有配置错误并重试测试。
- 如果没有在管理服务器上安装 JDBC 驱动程序,则单击 Next 以继续或跳过这一步。
- 在 Select Targets 页面中,选择要在其上部署数据源的服务器或集群,然后点击 Finish。
-
返回WebLogic 管理控制台的主菜单并选择 Change Center
Activate Changes。
有关 Oracle WebLogic 服务器数据源的更多信息,请参阅 Oracle Help Center 中的 Oracle WebLogic Server 的 JDBC 数据源。