DataX Web 安装配置教程 (Deepin/Ubuntu)
一、环境准备
1. 前置条件
-
✅ JDK 8 已安装
-
✅ Maven 已安装并配置
-
✅ DataX 已安装 (Python 3 兼容版本)
-
✅ MariaDB 已安装并运行
-
DataX Web 版本: 最新稳定版
-
安装路径: /usr/local/dataxweb
2. 验证前置环境
# 验证 JDK
java -version
# 验证 Maven
mvn -version
# 验证 DataX
ls /usr/local/datax/bin/datax.py
# 验证 MariaDB
mysql -u root -p123456 -e "SHOW DATABASES;"
二、下载 DataX Web 源码
1. GitHub 地址
https://github.com/WeiYe-Jing/datax-web
2. 克隆源码
cd ~/Downloads
# 使用 Git 克隆 (推荐)
git clone https://github.com/WeiYe-Jing/datax-web.git
# 或者下载 ZIP 包解压
wget https://github.com/WeiYe-Jing/datax-web/archive/refs/heads/master.zip
unzip master.zip
mv datax-web-master datax-web
三、创建 DataX Web 数据库
1. 登录 MariaDB
mysql -u root -p123456
2. 创建数据库和用户
— 创建 DataX Web 数据库
CREATE DATABASE datax_web DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
— 创建用户 (可选,也可以直接用 root)
CREATE USER 'datax'@'%' IDENTIFIED BY 'datax123456';
— 授予权限
GRANT ALL PRIVILEGES ON datax_web.* TO 'datax'@'%';
— 刷新权限
FLUSH PRIVILEGES;
EXIT;
3. 导入初始化 SQL
# 找到初始化 SQL 文件
cd ~/Downloads/datax-web
# 查找 SQL 文件
find . -name "*.sql" | grep -E "init|schema"
# 导入数据库
mysql -u root -p123456 datax_web < ./doc/db/datax_web.sql
或者如果有多个 SQL 文件:
mysql -u root -p123456 datax_web < ./sql/datax_web_schema.sql
mysql -u root -p123456 datax_web < ./sql/datax_web_data.sql
4. 验证数据库
mysql -u root -p123456 -e "USE datax_web; SHOW TABLES;"
应该能看到多个表,如: job_config, job_log, sys_user 等。
四、修改 DataX Web 配置
1. 配置数据库连接
编辑配置文件:
cd ~/Downloads/datax-web
vim ./modules/datax-admin/src/main/resources/application.yml
找到数据库配置部分,修改为:
spring:
datasource:
url: jdbc:mysql://localhost:3306/datax_web?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
2. 配置端口 (可选)
默认端口:
-
Admin: 9527
-
Executor: 9504
如需修改,编辑对应的 application.yml
五、编译 DataX Web
1. 清理并编译
cd ~/Downloads/datax-web
# 编译整个项目 (跳过测试)
mvn clean package -DskipTests
重要提示:
-
首次编译需要下载大量依赖,时间较长 (15-30 分钟)
-
确保网络连接稳定
-
如果下载失败,多试几次 mvn clean package -DskipTests
2. 查看编译结果
编译成功后,在以下目录找到打包文件:
ls ~/Downloads/datax-web/build/datax-web-2.x.x.tar.gz
3. 解压到安装目录
cd ~/Downloads/datax-web/build
# 解压
tar -zxvf datax-web-*.tar.gz
# 移动到安装目录
sudo mv datax-web /usr/local/dataxweb
# 设置所有权
sudo chown -R $USER:$USER /usr/local/dataxweb
六、配置 DataX Web 环境变量
1. 编辑 Executor 配置文件 (重要!)
vim /usr/local/dataxweb/modules/datax-executor/bin/env.properties
关键配置 (这是最容易出错的地方):
# DataX 安装目录
DATAX_HOME=/usr/local/datax
# Python 路径 – 注意!这里是 DataX 的执行脚本,不是 Python 解释器!
PYTHON_PATH=/usr/local/datax/bin/datax.py
# 数据库配置
SPRING_DATASOURCE_URL=jdbc:mysql://localhost:3306/datax_web?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
SPRING_DATASOURCE_USERNAME=root
SPRING_DATASOURCE_PASSWORD=123456
易错点说明: ❌ 错误: PYTHON_PATH=/usr/bin/python3.12 (这是解释器) ✅ 正确: PYTHON_PATH=/usr/local/datax/bin/datax.py (这是 DataX 脚本)
2. 编辑 Admin 配置文件
vim /usr/local/dataxweb/modules/datax-admin/bin/env.properties
配置内容:
# 数据库配置
SPRING_DATASOURCE_URL=jdbc:mysql://localhost:3306/datax_web?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
SPRING_DATASOURCE_USERNAME=root
SPRING_DATASOURCE_PASSWORD=123456
# 端口配置
SERVER_PORT=9527
七、替换 DataX Python 3 脚本
1. 从源码目录复制 Python 3 脚本
cd ~/Downloads/datax-web/doc/datax-web/datax-python3
# 查看可用的 Python 3 脚本
ls -la
# 复制到 DataX 安装目录
cp datax.py /usr/local/datax/bin/
cp datax_*.py /usr/local/datax/bin/
2. 验证 Python 3 兼容性
cd /usr/local/datax/bin
python3 datax.py -v
应该不会报语法错误。
八、启动 DataX Web
1. 启动 Admin (管理端)
cd /usr/local/dataxweb
./bin/start.sh -m datax-admin
查看日志:
tail -f ./modules/datax-admin/logs/datax-admin.log
看到以下信息表示启动成功:
Started DataXAdminApplication in xxx seconds
2. 启动 Executor (执行器)
cd /usr/local/dataxweb
./bin/start.sh -m datax-executor
查看日志:
tail -f ./modules/datax-executor/logs/datax-executor.log
3. 验证服务启动
# 查看 Java 进程
jps | grep DataX
# 应该看到:
# xxxxx DataXAdminApplication
# xxxxx DataXExecutorApplication
# 查看端口
netstat -tlnp | grep -E "9527|9504"
九、访问 DataX Web
1. Web 界面
浏览器访问: http://localhost:9527/index.html
2. 默认账号
-
用户名: admin
-
密码: 123456
3. 首次登录配置
登录后进入 "执行器管理"
检查执行器是否在线
如果不在线,检查日志排查问题
十、常见问题与解决方案
问题1: Python 路径配置错误 (最常见!)
错误信息:
SyntaxError: source code cannot contain null bytes
原因: PYTHON_PATH 配置成了 Python 解释器路径,而不是 DataX 脚本路径
解决方案: 编辑 /usr/local/dataxweb/modules/datax-executor/bin/env.properties:
# 错误配置
PYTHON_PATH=/usr/bin/python3.12 ❌
# 正确配置
PYTHON_PATH=/usr/local/datax/bin/datax.py ✅
重启 Executor:
/usr/local/dataxweb/bin/stop.sh -m datax-executor
/usr/local/dataxweb/bin/start.sh -m datax-executor
问题2: 编译失败
错误信息:
Failed to execute goal … BUILD FAILURE
解决方案:
# 清理 Maven 缓存
rm -rf ~/.m2/repository
# 重新编译
cd ~/Downloads/datax-web
mvn clean package -DskipTests
# 如果还是失败,检查网络连接和 Maven 镜像配置
问题3: 数据库连接失败
错误信息:
Communications link failure
检查项:
# 1. MariaDB 服务是否运行
sudo systemctl status mariadb
# 2. 数据库是否存在
mysql -u root -p123456 -e "SHOW DATABASES;" | grep datax_web
# 3. 用户权限
mysql -u root -p123456 -e "SELECT user, host FROM mysql.user;"
问题4: 启动脚本语法错误
错误信息:
syntax error near unexpected token '156'
原因: 启动脚本被修改,格式错误
解决方案: 从源码重新复制启动脚本:
cd ~/Downloads/datax-web/build/datax-web
cp bin/start.sh /usr/local/dataxweb/bin/
cp modules/datax-executor/bin/datax-executor.sh /usr/local/dataxweb/modules/datax-executor/bin/
问题5: 执行器不在线
检查项:
# 1. Executor 进程是否运行
jps | grep DataXExecutorApplication
# 2. 查看日志
tail -100 /usr/local/dataxweb/modules/datax-executor/logs/datax-executor.log
# 3. 检查端口
netstat -tlnp | grep 9504
问题6: 任务执行失败 – 密码加密问题
现象: 任务配置中的密码被加密为类似 p8wcniv8K3goLwrF+mlPAA== 的字符串
解决方案: 手动编辑任务 JSON,使用明文密码:
"username": "zhzt",
"password": "zhzt123456" // 使用明文,不要加密
问题7: 虚拟机挂起后服务停止
解决方案:
# 重启 DataX Web 服务
/usr/local/dataxweb/bin/stop.sh -m datax-executor
/usr/local/dataxweb/bin/stop.sh -m datax-admin
/usr/local/dataxweb/bin/start.sh -m datax-admin
/usr/local/dataxweb/bin/start.sh -m datax-executor
十一、停止 DataX Web
# 停止 Executor
/usr/local/dataxweb/bin/stop.sh -m datax-executor
# 停止 Admin
/usr/local/dataxweb/bin/stop.sh -m datax-admin
# 验证停止
jps | grep DataX
十二、服务管理命令汇总
启动服务
cd /usr/local/dataxweb
# 启动 Admin
./bin/start.sh -m datax-admin
# 启动 Executor
./bin/start.sh -m datax-executor
停止服务
# 停止 Admin
./bin/stop.sh -m datax-admin
# 停止 Executor
./bin/stop.sh -m datax-executor
查看日志
# Admin 日志
tail -f ./modules/datax-admin/logs/datax-admin.log
# Executor 日志
tail -f ./modules/datax-executor/logs/datax-executor.log
十三、重要配置文件位置
| Executor 环境变量 | /usr/local/dataxweb/modules/datax-executor/bin/env.properties | 最重要! PYTHON_PATH 在这里配置 |
| Admin 环境变量 | /usr/local/dataxweb/modules/datax-admin/bin/env.properties | 数据库连接配置 |
| Admin 日志 | /usr/local/dataxweb/modules/datax-admin/logs/ | 管理端日志 |
| Executor 日志 | /usr/local/dataxweb/modules/datax-executor/logs/ | 执行器日志 |
十四、端口与服务说明
| DataX Admin | 9527 | Web 管理界面 | netstat -tlnp \\| grep 9527 |
| DataX Executor | 9504 | 任务执行器 | netstat -tlnp \\| grep 9504 |
十五、卸载 DataX Web
# 停止服务
/usr/local/dataxweb/bin/stop.sh -m datax-executor
/usr/local/dataxweb/bin/stop.sh -m datax-admin
# 删除安装目录
sudo rm -rf /usr/local/dataxweb
# 删除源码 (可选)
rm -rf ~/Downloads/datax-web
# 删除数据库 (可选)
mysql -u root -p123456 -e "DROP DATABASE datax_web;"
安装完成后,继续安装 DataEase 或配置大数据管理脚本


