📄 使用达梦 8 数据库
内部资料,请刷新扫码登录
pigcloud
写在最前
PIGX 官方目前主推 MySQL 8 和 达梦国产化数据库,建议优先在这两种数据库上跑通基础功能后,再探索使用其他类型的数据库。 由于底层采用了 MyBatis-Plus,已屏蔽大部分数据库间的差异。因此,只需通过工具将 MySQL 脚本转换为目标数据库的格式即可完成迁移,无需复杂的额外调整。
# 环境说明
依赖 | 版本 |
---|---|
数据库 | dm8_single:dm8_20240715_rev232765_x86_rh6_64 |
PIGX | 5.8 |
架构模式 | 单体 |
# 一、使用 SQLark 迁移 MySQL 脚本
达梦数据库提供了免费的数据迁移工具 SQLark,可以将 Oracle、MySQL 等数据库迁移到达梦。DTS 具有全图形化操作,简单直观,迁移速度快。通过 SQLark,将标准 MySQL 脚本转换为达梦数据库脚本。

# 二、单体架构模式
# 2.1 调整 common-sequence 依赖
为保证系统的兼容性和稳定性,还需对以下配置进行调整:
- 在
pigx-common-sequence/pom.xml
中保留或修改成 dm 驱动:

# 2.2 调整 pigx-boot/application-dev.yml 维护链接和配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
druid:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://localhost:5236?schema=PIGXX_BOOT&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
username: SYSDBA
password: SYSDBA
# 使用达梦需要关闭自动创建表
flowable:
database-schema-update: none
# 三、【进阶】微服务架构模式
# 3.1、修改 Nacos 适配达梦数据源
在项目的 pom.xml
中添加以下依赖:
<!--达梦数据库插件:https://github.com/pig-mesh/nacos-datasource-plugin-dm8-->
<dependency>
<groupId>com.pig4cloud.plugin</groupId>
<artifactId>nacos-datasource-plugin-dm8</artifactId>
<version>0.0.5</version>
</dependency>
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
</dependency>
然后在 pigx-register/application.yml
中配置达梦数据库的相关参数:
db:
num: 1
url:
0: jdbc:dm://127.0.0.01:5236?schema=PIGXX_CONFIG
user: 用户名
password: 密码
pool:
config:
driver-class-name: dm.jdbc.driver.DmDriver
spring:
datasource:
platform: dameng
# 3.2、修改微服务数据连接参数
- 添加达梦数据库驱动依赖:
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
</dependency>
- 将原有服务连接 MySQL 的参数修改为达梦数据库的链接参数:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://localhost:5236?schema=XXX&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
username: 用户名
password: 密码
# 3.3、其他必要配置
为保证系统的兼容性和稳定性,还需对以下配置进行调整:
- 在
pigx-common-sequence/pom.xml
中保留或修改成 dm 驱动:

- 在
nacos/pigx-report-platform-dev.yml
中添加如下配置:
# 增加如下配置,关闭 JPA 自动建表
spring:
jpa:
hibernate:
ddl-auto: none
- 在
nacos/pigx-flow-engine-biz-dev.yml
中添加如下配置:
# 增加如下配置,关闭 Flowable 自动建表
flowable:
database-schema-update: none