EasyScheduler数据源配置完全指南
dolphinscheduler 项目地址: https://gitcode.com/gh_mirrors/ea/EasyScheduler
前言
EasyScheduler作为一款强大的分布式工作流任务调度系统,其数据源配置是系统部署和使用的关键环节。本文将全面介绍EasyScheduler中数据源的配置方法,包括元数据库的设置和数据源中心的使用,帮助用户快速搭建稳定可靠的调度环境。
元数据库配置
为什么需要配置元数据库
EasyScheduler的元数据包括工作流定义、任务实例、用户权限等重要信息,这些数据需要存储在关系型数据库中。系统支持MySQL和PostgreSQL两种主流数据库作为元数据存储。
MySQL数据库配置
数据库初始化
对于MySQL 5.6/5.7版本:
CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
-- 替换{user}和{password}为实际值
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%' IDENTIFIED BY '{password}';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost' IDENTIFIED BY '{password}';
FLUSH PRIVILEGES;
对于MySQL 8.0+版本:
CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
-- 替换{user}和{password}为实际值
CREATE USER '{user}'@'%' IDENTIFIED BY '{password}';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%';
CREATE USER '{user}'@'localhost' IDENTIFIED BY '{password}';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost';
FLUSH PRIVILEGES;
PostgreSQL数据库配置
CREATE DATABASE dolphinscheduler;
-- 替换{user}和{password}为实际值
CREATE USER {user} PASSWORD '{password}';
ALTER DATABASE dolphinscheduler OWNER TO {user};
-- 在系统命令行执行
echo "host dolphinscheduler {user} {ip} md5" >> $PGDATA/pg_hba.conf
pg_ctl reload
环境变量配置
配置完成后,需要设置环境变量告知EasyScheduler如何连接数据库:
对于MySQL:
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:
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
数据源中心配置
支持的数据源类型
EasyScheduler数据源中心支持多种数据源类型:
- 关系型数据库:MySQL、PostgreSQL、Oracle、SQL Server
- 大数据组件:Hive/Impala、Spark
- 分析型数据库:ClickHouse
数据源配置步骤
- 进入"数据源中心"界面
- 点击"创建数据源"按钮
- 选择数据源类型
- 填写连接信息(主机、端口、用户名、密码等)
- 点击"测试连接"验证配置
- 连接成功后保存配置
特殊数据源注意事项
对于MySQL、Oracle、SQL Server等数据源,由于许可证兼容性问题,需要手动下载对应JDBC驱动:
- 下载对应数据库的JDBC驱动
- 将驱动文件放置到以下目录:
- api-server/libs
- worker-server/libs
- 重启相关服务
以MySQL为例:
- 下载mysql-connector-java驱动
- 将驱动jar包复制到指定目录
- 重启api-server和worker-server服务
常见问题解答
Q: 为什么测试连接成功但保存失败? A: 可能是权限问题,确保数据库用户有足够的权限访问指定数据库。
Q: 如何验证元数据库配置是否正确? A: 可以登录数据库查看是否自动创建了必要的表结构。
Q: 数据源配置后为什么任务执行失败? A: 检查worker节点是否也配置了对应的JDBC驱动。
最佳实践建议
- 生产环境建议使用高性能数据库作为元数据存储
- 为EasyScheduler创建专用数据库用户并限制权限
- 定期备份元数据库
- 大数据量环境下适当调整数据库连接池参数
- 不同业务数据源建议分开配置,便于管理
通过本文的详细指导,您应该能够顺利完成EasyScheduler的数据源配置工作,为后续的工作流调度打下坚实基础。
dolphinscheduler 项目地址: https://gitcode.com/gh_mirrors/ea/EasyScheduler
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考