商业版集成国产数据库:电科金仓

# 前置条件

  1. 安装金仓数据库(V8R6C9B14),仅支持金仓数据库Mysql模式
docker run -tid --privileged --name kingbase  -p 54321:54321 -e ENABLE_CI=no -e NEED_START=yes -e DB_USER=root -e DB_PASSWORD=root -e DB_MODE=mysql 686e0dfb177e
  1. 安装JDBC(kingbase8-8.6.0.jar)驱动到Maven私服,若没有可以安装到本地,执行如下命令:
mvn install:install-file -Dfile="kingbase8-8.6.0.jar" "-DgroupId=cn.com.kingbase"  "-DartifactId=kingbase8" "-Dversion=8.6.0" "-Dpackaging=jar"
  1. 安装好数据库之后,打开数据库开发工具,创建数据库flyflow,新建模式flyflow

# 修改代码配置

  1. 默认分支是不支持金仓数据库的,需要切换到分支:**-gcdb
  2. 先将主分支代码合并到国产数据库分支:**-gcdb
  3. 打开module:flyflow-flowable的pom.xml文件,注释掉达梦模块的依赖
<!--        <dependency>-->
<!--            <groupId>cc.flyflow.flowable.dm</groupId>-->
<!--            <artifactId>flyflow-flowable-dm</artifactId>-->
<!--        </dependency>--> 

打开金仓的模块依赖:

     <dependency>
            <groupId>cc.flyflow</groupId>
            <artifactId>flyflow-flowable-kingbase8</artifactId>
        </dependency>
  1. 打开module:flyflow-biz的pom.xml文件,注释掉达梦模块的依赖
<!--        <dependency>-->
<!--            <groupId>org.anyline</groupId>-->
<!--            <artifactId>anyline-data-jdbc-dm</artifactId>-->
<!--        </dependency>-->

打开金仓的模块依赖:

         <dependency>
    <groupId>org.anyline</groupId>
    <artifactId>anyline-data-jdbc-kingbase</artifactId>
</dependency>
  1. 打开application.yml文件,修改数据源配置为金仓数据库,这里要注意下方的三个flyflow,一定要配置一样,大小写也一样
  datasource:
    url: jdbc:kingbase8://192.168.31.86:54321/flyflow?currentSchema=flyflow
    driver-class-name: com.kingbase8.Driver
    ##数据库账号
    username: root
    ##数据库密码
    password: root
    hikari:
      connection-timeout: 10000
      validation-timeout: 3000
      idle-timeout: 60000
      login-timeout: 5
      max-lifetime: 60000
      maximum-pool-size: 30
      minimum-idle: 10
      read-only: false
      schema: flyflow  #金仓数据库 指定schema 并且 currentSchema 和database一致

# 导入数据库表

  1. 打开根目录下的 /sql/kingbase/**.sql执行导入即可

# 注意事项

  1. 若项目中有达梦相关的报错,可以自行引入达梦相关的包来消除或者删除达梦相关的代码和引入
  2. 若删除代码,别遗漏此处MessageConverterConfig中达梦相关的代码