wildfly配置mysql数据源
ben 2020-11-18
wildfly
docker
在调研drools的时候,drools控制台是用wildfly服务器部署的,wildfly默认用的是h2数据库,如果我们想要将wildfly的数据库切换成我们常用的mysql,可以这么做~~~
# wildfly配置mysql数据源
wildfly默认使用的是h2数据库,以drools BusinessCentral为例,尝试切换到mysql;
# 准备工作
启动drools BusinessCentral容器:
docker run -p 8080:8080 -p 8001:8001 -p 9990:9990 -d --name jbpm-workbench jboss/business-central-workbench-showcase:latest
# 配置mysql数据源
# 进入容器
docker exec -it jbpm-workbench /bin/bash
1
容器中的**%JBOSS_HOME%**:/opt/jboss/wildfly
# 创建mysql依赖包与module.xml文件
进入目录**%JBOSS_HOME%/modules/mysql/main**,该路径中的mysql与main文件夹需要自己创建;
将mysql-connector-java-8.0.15.jar放入main文件夹下,然后再在该目录下创建文件module.xml,并将一下代码贴进去:
从宿主机将jar包拷贝到容器指定路径下
docker cp /Users/ben/Desktop/mysql-connector-java-8.0.15.jar jbpm-workbench:/opt/jboss/wildfly/modules/mysql/main
1
2
2
module.xml
<module xmlns="urn:jboss:module:1.1" name="mysql" slot="main">
<resources>
<resource-root path="mysql-connector-java-8.0.15.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 配置数据源与驱动
编辑**%JBOSS_HOME%/standalone/configuration/standalone.xml**,修改
<datasources>
<datasource jndi-name="java:jboss/datasources/MySQLDS" pool-name="MySQLDS" enabled="true" use-java-context="true">
<connection-url>jdbc:mysql://10.138.16.164:3306/mybatis?characterEncoding=utf-8</connection-url>
<driver>mysql</driver>
<pool>
<min-pool-size>10</min-pool-size>
<max-pool-size>20</max-pool-size>
<prefill>true</prefill>
</pool>
<security>
<user-name>root</user-name>
<password>123456</password>
</security>
</datasource>
<drivers>
<driver name="mysql" module="mysql">
<driver-class>com.mysql.jdbc.Driver</driver-class>
<xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
<!--
新版本的mysql用com.mysql.cj.jdbc.MysqlXADataSource;
老版本的mysql用com.mysql.jdbc.jdbc2.optional.MysqlXADataSource;
-->
</driver>
</drivers>
</datasources>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 更改wildfly默认数据源
默认的数据源ExampleDS还会被引用到,需要登陆wildfly控制台修改;
# 登陆
http://localhost:9990
1
步骤如下:
保存,即数据源切换完毕~
# 配置wildfly控制任何ip可访问
在修改wildfly默认数据源的时候,需要去控制台,即“9990”端口的页面修改,可能会出现页面加载失败的问题,此时需要修改配置文件;
# 修改 standalone.xml文件
编辑**%JBOSS_HOME%/standalone/configuration/standalone.xml**,将“127.0.0.1”替换为:“0.0.0.0”:
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
</interface>
</interfaces>
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 新增用户
默认是无用户的,需要新增用户;执行**%JBOSS_HOME%**/bin/add-user.sh,按提示填写即可
cd /opt/jboss/wildfly/bin
sh add-user.sh
1
2
2
# 重启容器
docker restart jbpm-workbench
1