11.3. 创建数据源
数据源可以使用管理控制台或管理 CLI 创建。
JBoss EAP 8.0 允许您在数据源属性值中使用表达式,如 enabled
属性。
11.3.1. 创建非 XA 数据源 复制链接链接已复制到粘贴板!
您可以使用管理 CLI 或管理控制台创建非 XA 数据源。
使用管理控制台定义非 XA 数据源
在单机或域模式中导航到数据源。
在独立模式中使用以下导航:
Configuration
Subsystems Datasources & Drivers Datasources 在域模式中使用以下导航:
configuration
Profiles full Datasources & Drivers Datasources
- 单击 Add (+)按钮,再选择 Add Datasource。
- 它打开 Add Datasource 向导,您可以在其中选择数据源类型,然后单击 Next。这会为您的数据库创建一个模板。以下向导页面会预先填充特定于所选数据源的值。这使得数据源创建过程变得简单。
- 在完成数据源创建过程前,您可以在 Test Connection 页面中测试您的连接。
- 查看详情并点 Finish 创建数据源。
使用管理 CLI 定义非 XA 数据源
非 XA 数据源可以使用 data-source add
management CLI 命令来定义。
- 如果您还没有这样做,请安装并注册适当的 JDBC 驱动程序作为核心模块。
使用
data-source add
命令定义数据源,并指定适当的参数值。data-source add --name=DATASOURCE_NAME --jndi-name=JNDI_NAME --driver-name=DRIVER_NAME --connection-url=CONNECTION_URL --user-name=USER_NAME --password=PASSWORD
data-source add --name=DATASOURCE_NAME --jndi-name=JNDI_NAME --driver-name=DRIVER_NAME --connection-url=CONNECTION_URL --user-name=USER_NAME --password=PASSWORD
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意在受管域中,您必须指定 the-
profile=PROFILE_NAME
参数。有关这些参数值的提示,请参见以下的 Datasource 参数 部分。
有关详细 示例,请参阅支持的数据库 的数据源配置示例。
数据源参数
- JNDI-name
-
数据源的 JNDI 名称必须以
java:/
或java:jboss/
开头。例如,java:jboss/datasources/ExampleDS
。 - driver-name
驱动程序名称值取决于 JDBC 驱动程序是否作为核心模块安装,还是 JAR 部署。
- 对于核心模块,驱动程序名称值将是 JDBC 驱动程序在注册时给出的名称。
对于 JAR 部署,如果
/META-INF/services/java.sql.Driver
文件中只有一个类,则驱动程序名称为 JAR 的名称。如果列出了多个类,则值为JAR_NAME
+ "_" +DRIVER_CLASS_NAME
+ "_" +MAJOR_VERSION
+ "_" +MINOR_VERSION
(如mysql-connector-java-5.1.36-bin.jar_com.mysql.cj.jdbc.Driver_5_1
)。在部署 JDBC JAR 时,您还可以查看 JBoss EAP 服务器日志中列出的驱动程序名称。
WFLYJCA0018: Started Driver service with driver-name = mysql-connector-java-5.1.36-bin.jar_com.mysql.cj.jdbc.Driver_5_1
WFLYJCA0018: Started Driver service with driver-name = mysql-connector-java-5.1.36-bin.jar_com.mysql.cj.jdbc.Driver_5_1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- connection-url
- 有关支持的数据库的连接 URL 格式的详情,请查看 Datasource Connection URL 列表。
有关所有可用数据源属性的完整列表,请参阅 Datasource Attributes 部分。
- user-name
- 创建新数据源连接时要使用的用户名。
- password
- 创建新数据源连接时要使用的密码。
11.3.2. 创建 XA 数据源 复制链接链接已复制到粘贴板!
您可以使用管理 CLI 或管理控制台创建 XA 数据源。
使用管理控制台定义 XA 数据源
在单机或域模式中导航到数据源。
在独立模式中使用以下导航:
Configuration
Subsystems Datasources & Drivers Datasources 在域模式中使用以下导航:
configuration
Profiles full Datasources & Drivers Datasources
- 单击添加(+)按钮,再选择 Add XA Datasource。
- 它打开 Add XA Datasource 向导,您可以在其中选择数据源类型,然后单击 Next。这会为您的数据库创建一个模板。以下向导页面会预先填充特定于所选数据源的值。这使得数据源创建过程变得简单。
- 在完成数据源创建过程前,您可以在 Test Connection 页面中测试您的连接。
- 查看详情并点 Finish 创建数据源。
使用管理 CLI 定义 XA 数据源
XA 数据源可以使用 xa-data-source add
management CLI 命令来定义。
在受管域中,您将需要指定要使用的配置文件。根据管理 CLI 命令的格式,您将在前面添加 /profile=PROFILE_NAME
命令,或者传递至 - profile=PROFILE_NAME
参数。
- 如果您还没有这样做,请安装并注册适当的 JDBC 驱动程序作为核心模块。
使用
xa-data-source add
命令定义数据源,并指定适当的参数值。xa-data-source add --name=XA_DATASOURCE_NAME --jndi-name=JNDI_NAME --driver-name=DRIVER_NAME --xa-datasource-class=XA_DATASOURCE_CLASS --xa-datasource-properties={"ServerName"=>"HOST_NAME","DatabaseName"=>"DATABASE_NAME"}
xa-data-source add --name=XA_DATASOURCE_NAME --jndi-name=JNDI_NAME --driver-name=DRIVER_NAME --xa-datasource-class=XA_DATASOURCE_CLASS --xa-datasource-properties={"ServerName"=>"HOST_NAME","DatabaseName"=>"DATABASE_NAME"}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有关这些参数值的提示,请参见以下的 Datasource 参数 部分。
设置 XA 数据源属性。
在定义 XA 数据源时,至少需要一个 XA 数据源属性,或者在上一步中添加数据源时收到错误。定义 XA 数据源时未设置的任何属性都可以单独设置。
设置服务器名称。
/subsystem=datasources/xa-data-source=XA_DATASOURCE_NAME/xa-datasource-properties=ServerName:add(value=HOST_NAME)
/subsystem=datasources/xa-data-source=XA_DATASOURCE_NAME/xa-datasource-properties=ServerName:add(value=HOST_NAME)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置数据库名称。
/subsystem=datasources/xa-data-source=XA_DATASOURCE_NAME/xa-datasource-properties=DatabaseName:add(value=DATABASE_NAME)
/subsystem=datasources/xa-data-source=XA_DATASOURCE_NAME/xa-datasource-properties=DatabaseName:add(value=DATABASE_NAME)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
有关详细 示例,请参阅支持的数据库 的数据源配置示例。
数据源参数
- JNDI-name
-
数据源的 JNDI 名称必须以
java:/
或java:jboss/
开头。例如,java:jboss/datasources/ExampleDS
。 - driver-name
驱动程序名称值取决于 JDBC 驱动程序是否作为核心模块安装,还是 JAR 部署。
- 对于核心模块,驱动程序名称值将是 JDBC 驱动程序在注册时给出的名称。
对于 JAR 部署,如果
/META-INF/services/java.sql.Driver
文件中只有一个类,则驱动程序名称为 JAR 的名称。如果列出了多个类,则值为JAR_NAME
+ "_" +DRIVER_CLASS_NAME
+ "_" +MAJOR_VERSION
+ "_" +MINOR_VERSION
,例如mysql-connector-java-5.1.36-bin.jar_com.mysql.mysql.j.jdbc.Driver_5_1
。在部署 JDBC JAR 时,您还可以查看 JBoss EAP 服务器日志中列出的驱动程序名称。
WFLYJCA0018: Started Driver service with driver-name = mysql-connector-java-5.1.36-bin.jar_com.mysql.cj.jdbc.Driver_5_1
WFLYJCA0018: Started Driver service with driver-name = mysql-connector-java-5.1.36-bin.jar_com.mysql.cj.jdbc.Driver_5_1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- xa-datasource-class
-
为
jakarta.sql.XADataSource
类的 JDBC 驱动程序实现指定 XA 数据源类。 - xa-datasource-properties
- 在定义 XA 数据源时,至少需要一个 XA 数据源属性,或者在尝试添加它时收到错误。在定义后,也可以向 XA 数据源添加其他属性。
有关所有可用数据源属性的完整列表,请参阅 Datasource Attributes 部分。