商业版集成国产数据库:达梦
# 前置条件
# 安装金达梦数据库
docker run -d -p 5236:5236 --name=dm8_test --privileged=true -e PAGE_SIZE=16 -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e INSTANCE_NAME=dm8_test 0880e3256f92
- 安装JDBC(DmJdbcDriver18-8.1.3.140.jar)驱动到Maven私服,若没有可以安装到本地,执行如下命令:
mvn install:install-file -Dfile="DmJdbcDriver18.jar" "-DgroupId=com.dameng" "-DartifactId=DmJdbcDriver18" "-Dversion=8.1.3.140" "-Dpackaging=jar"
# 初始化sql
- 先在mysql数据库执行脚本:
all.sql和flowable.sql - 然后导入mysql所有脚本到达梦数据库,可以通过百灵或者开源工具dbswitch完成导入
- 执行完sql之后执行如下脚本:
alter table ACT_HI_VARINST modify "TEXT_" varchar(100);
alter table ACT_RU_VARIABLE modify "TEXT_" varchar(100);
# 修改代码配置
- 默认分支是不支持达梦数据库的,需要切换到分支:
**-gcdb - 先将主分支代码合并到国产数据库分支:
**-gcdb - 打开module:flyflow-flowable的pom.xml文件,注释掉
金仓模块的依赖
<dependency>
<groupId>cc.flyflow.flowable.kingbase</groupId>
<artifactId>flyflow-flowable-kingbase8</artifactId>
</dependency>
打开达梦的模块依赖:
<dependency>
<groupId>cc.flyflow.flowable.dm</groupId>
<artifactId>flyflow-flowable-dm</artifactId>
</dependency>
- 打开module:flyflow-biz的pom.xml文件,注释掉
金仓模块的依赖
<!-- <dependency>-->
<!-- <groupId>org.anyline</groupId>-->
<!-- <artifactId>anyline-data-jdbc-kingbase</artifactId>-->
<!-- </dependency>-->
打开达梦的模块依赖:
<dependency>
<groupId>org.anyline</groupId>
<artifactId>anyline-data-jdbc-dm</artifactId>
</dependency>
- 打开application.yml文件,修改数据源配置为达梦数据库
datasource:
url: jdbc:dm://127.0.0.1:5236?SCHEMA=SYSDBA
driver-class-name: dm.jdbc.driver.DmDriver
##数据库账号
username: SYSDBA
##数据库密码
password: SYSDBA001
hikari:
connection-timeout: 10000
validation-timeout: 3000
idle-timeout: 60000
login-timeout: 5
max-lifetime: 60000
maximum-pool-size: 50
minimum-idle: 10
read-only: false
jackson:
#字段为null时不返回该字段
default-property-inclusion: non_null
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
deserialization:
fail-on-unknown-properties: false