[O] Dolphinscheduler 版本适配改造(一)
# 背景说明
Dolphinscheduler 是企业级分布式工作流调度平台,适配 MySQL 作为元数据存储时, 必须确保各模块都正确引入 MySQL JDBC 驱动。 否则打包或部署上线后,极易出现“找不到 mysql-connector-java” 或 “No suitable driver found” 等数据库连接类报错。 MySQL依赖适配
# 适配思路
在多模块工程下,需针对实际涉及数据库访问的每个子模块,手动补全 mysql-connector-java 依赖,否则任何一环缺失都可能导致整体不可用。
提示
- 需关注 dolphinscheduler-worker、dolphinscheduler-master、dolphinscheduler-api、dolphinscheduler-alert-server 等模块
- 每个模块的 pom.xml 单独补齐 MySQL 驱动依赖,不能只在父工程声明
# 实操步骤
# 1. 补丁文件准备
请先将如下补丁文件,放入对应 patch 目录,确保自动应用。
# 2. 关键 diff 内容
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.24</version>
+ <scope>compile</scope>
+ </dependency>
1
2
3
4
5
6
2
3
4
5
6
# 修改位置汇总
模块目录 | 文件路径 |
---|---|
dolphinscheduler-worker | dolphinscheduler-worker/pom.xml |
dolphinscheduler-master | dolphinscheduler-master/pom.xml |
dolphinscheduler-api | dolphinscheduler-api/pom.xml |
dolphinscheduler-alert-server | dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml |
笔记
建议在所有涉及数据库的模块补齐驱动,避免遗漏引发编译或运行异常。每次升级 MySQL 版本也同步调整驱动版本号,保持兼容。
# 完整 diff 文件参考
Subject: [PATCH] optimized: 增加mysql 驱动
---
Index: dolphinscheduler-worker/pom.xml
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/dolphinscheduler-worker/pom.xml b/dolphinscheduler-worker/pom.xml
--- a/dolphinscheduler-worker/pom.xml (revision 2ec95b5c2c50d2882d40e07fb13cf38b5f0469b4)
+++ b/dolphinscheduler-worker/pom.xml (date 1728530771659)
@@ -118,6 +118,13 @@
<artifactId>zt-zip</artifactId>
</dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.24</version>
+ <scope>compile</scope>
+ </dependency>
+
</dependencies>
<build>
Index: dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml b/dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml
--- a/dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml (revision 2ec95b5c2c50d2882d40e07fb13cf38b5f0469b4)
+++ b/dolphinscheduler-alert/dolphinscheduler-alert-server/pom.xml (date 1728530601997)
@@ -71,6 +71,13 @@
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.24</version>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
<build>
Index: dolphinscheduler-api/pom.xml
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/dolphinscheduler-api/pom.xml b/dolphinscheduler-api/pom.xml
--- a/dolphinscheduler-api/pom.xml (revision 2ec95b5c2c50d2882d40e07fb13cf38b5f0469b4)
+++ b/dolphinscheduler-api/pom.xml (date 1728530716579)
@@ -236,6 +236,12 @@
<groupId>org.apache.dolphinscheduler</groupId>
<artifactId>dolphinscheduler-extract-alert</artifactId>
</dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.24</version>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
<build>
<testResources>
Index: dolphinscheduler-master/pom.xml
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/dolphinscheduler-master/pom.xml b/dolphinscheduler-master/pom.xml
--- a/dolphinscheduler-master/pom.xml (revision 2ec95b5c2c50d2882d40e07fb13cf38b5f0469b4)
+++ b/dolphinscheduler-master/pom.xml (date 1728530744894)
@@ -289,6 +289,13 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-kubernetes-client-config</artifactId>
</dependency>
+
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>8.0.24</version>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
<build>
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
- 01
- bigtop-select 打包缺 compat 报错修复 deb07-16
- 02
- bigtop-select 打包缺 control 文件报错修复 deb07-16
- 03
- 首次编译-环境初始化 必装07-16