首页
/ Apache DolphinScheduler 数据源配置完全指南

Apache DolphinScheduler 数据源配置完全指南

2026-02-04 04:42:27作者:苗圣禹Peter

概述

Apache DolphinScheduler 作为一款优秀的分布式工作流任务调度系统,其数据源配置是系统部署和使用的重要环节。本文将详细介绍 DolphinScheduler 中元数据库的配置方法以及数据源中心的设置技巧,帮助用户快速搭建稳定可靠的数据连接环境。

元数据库配置

元数据库选择

DolphinScheduler 支持将元数据存储在关系型数据库中,目前官方支持 PostgreSQL 和 MySQL 两种数据库。元数据库的选择会影响系统的性能和稳定性,建议根据实际业务场景进行选择:

  • MySQL:适合大多数业务场景,社区支持完善
  • PostgreSQL:适合需要更严格事务支持的场景

MySQL 元数据库配置

数据库初始化

对于 MySQL 5.6/5.7 版本:

mysql -uroot -p

# 创建数据库
mysql> CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

# 创建用户并授权(替换{user}和{password})
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%' IDENTIFIED BY '{password}';
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost' IDENTIFIED BY '{password}';
mysql> flush privileges;

对于 MySQL 8.0+ 版本:

mysql -uroot -p

# 创建数据库
mysql> CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

# 创建用户并授权(替换{user}和{password})
mysql> CREATE USER '{user}'@'%' IDENTIFIED BY '{password}';
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%';
mysql> CREATE USER '{user}'@'localhost' IDENTIFIED BY '{password}';
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost';
mysql> FLUSH PRIVILEGES;

环境变量配置

配置以下环境变量(替换{user}和{password}):

export DATABASE=mysql
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:mysql://127.0.0.1:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false"
export SPRING_DATASOURCE_USERNAME={user}
export SPRING_DATASOURCE_PASSWORD={password}

PostgreSQL 元数据库配置

数据库初始化

psql

# 创建数据库和用户
postgres=# CREATE DATABASE dolphinscheduler;
postgres=# CREATE USER {user} PASSWORD '{password}';
postgres=# ALTER DATABASE dolphinscheduler OWNER TO {user};
postgres=# \q

# 配置访问权限(替换{ip}为DS集群IP地址)
echo "host    dolphinscheduler   {user}    {ip}     md5" >> $PGDATA/pg_hba.conf
pg_ctl reload

环境变量配置

export DATABASE=postgresql
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:postgresql://127.0.0.1:5432/dolphinscheduler"
export SPRING_DATASOURCE_USERNAME={user}
export SPRING_DATASOURCE_PASSWORD={password}

数据库初始化脚本

完成上述配置后,执行以下命令初始化数据库:

bash tools/bin/upgrade-schema.sh

数据源中心配置

支持的数据源类型

DolphinScheduler 数据源中心支持多种数据源类型,包括但不限于:

  • MySQL
  • PostgreSQL
  • Hive/Impala
  • Spark
  • ClickHouse
  • Oracle
  • SQL Server

数据源创建步骤

  1. 进入系统后,点击底部"数据源中心"
  2. 选择"创建数据源"
  3. 填写数据源连接信息
  4. 点击"测试连接"验证配置是否正确
  5. 测试通过后保存数据源

JDBC 驱动注意事项

由于部分数据库的 JDBC 驱动与 Apache LICENSE V2 协议不兼容,DolphinScheduler 发行包中未包含这些驱动,需要用户手动下载并放置到指定目录。

MySQL 驱动配置示例

  1. 下载对应版本的 MySQL JDBC 驱动
  2. 将驱动文件放置到以下目录:
    • api-server/libs
    • worker-server/libs
  3. 重启 api-server 和 worker-server 服务

重要提示:如果将 MySQL 用作元数据库,必须使用 8.0.16 及以上版本的 JDBC 驱动;如果仅用作数据源中心,则无此版本限制。

最佳实践建议

  1. 生产环境建议:生产环境建议使用外部数据库而非内置数据库,确保数据持久性
  2. 连接池配置:对于高并发场景,可适当调整连接池参数
  3. 定期备份:定期备份元数据库,防止数据丢失
  4. 权限控制:遵循最小权限原则,为 DolphinScheduler 配置适当的数据库权限
  5. 网络优化:确保 DolphinScheduler 服务器与数据库服务器之间的网络延迟较低

通过本文的详细指导,您应该能够顺利完成 Apache DolphinScheduler 的数据源配置工作,为后续的工作流调度和管理奠定坚实基础。

登录后查看全文
热门项目推荐
相关项目推荐