DataX和DataX-WEB 安装步骤
一.安装DataX
1. 简介
DataX
是阿里云 DataWorks
数据集成 的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL
、Oracle
、OceanBase
、SqlServer
、Postgre
、HDFS
、Hive
、ADS
、HBase
、TableStore(OTS)
、 MaxCompute(ODPS)
、Hologres
、DRDS
, databend
等各种异构数据源之间高效的数据同步功能。
项目github地址
:DataX
2.环境依赖
Language: Java 8(jdk版本建议1.8.201以上)
Python2.7(支持Python3需要修改替换datax/bin下面的三个python文件,替换文件在doc/datax-web/datax-python3下)
Environment
:MacOS
,Windows
,Linux
MySQL (5.5+) 必选,对应客户端可以选装, Linux服务上若安装mysql的客户端可以通过部署脚本快速初始化数据库
JDK (1.8.0_xxx) 必选
Maven (3.6.1+) 必选
DataX 必选
Python (2.x) (支持Python3需要修改替换datax/bin下面的三个python文件,替换文件在doc/datax-web/datax-python3下) 必选,主要用于调度执行底层DataX的启动脚本,默认的方式是以Java子进程方式执行DataX,用户可以选择以Python方式来做自定义的改造
2.1安装java
yum list java*
yum install -y java-1.8.0-openjdk-devel.x86_64
java -version
输出如下结果,安装成功:
openjdk version "1.8.0_362"
OpenJDK Runtime Environment (build 1.8.0_362-b08)
OpenJDK 64-Bit Server VM (build 25.362-b08, mixed mode)
2.2安装maven
wget https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
tar xvf apache-maven-3.6.3-bin.tar.gz -O /opt/maven
修改环境变量
#maven
MAVEN_HOME=/opt/maven
export PATH=$PATH:$MAVEN_HOME/bin
查看版本信息mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /opt/maven
Java version: 1.8.0_362, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.59.1.el7.x86_64", arch: "amd64", family: "unix"
3.安装data-x
下载data-x解压
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
tar xvf datax.tar.gz
cd datax/bin
删除项目plugin/reader
和/plugin/writer/
目录下面._*
开头的文件目录
rm -rf ../plugin/reader/._*
rm -rf ../plugin/writer/._*
编写启动测试文件vim stream2stream.json
,内容如下:
{
"job": {
"content": [
{
"reader": {
"name": "streamreader",
"parameter": {
"sliceRecordCount": 10,
"column": [
{
"type": "long",
"value": "10"
},
{
"type": "string",
"value": "hello,你好,世界-DataX"
}
]
}
},
"writer": {
"name": "streamwriter",
"parameter": {
"encoding": "UTF-8",
"print": true
}
}
}
],
"setting": {
"speed": {
"channel": 5
}
}
}
}
启动测试
python datax.py ./stream2stream.json
输出测试结果如下,表示安装成功
2023-03-28 20:05:47.292 [job-0] INFO JobContainer - DataX jobId [0] completed successfully.
2023-03-28 20:05:47.293 [job-0] INFO HookInvoker - No hook invoked, because base dir not exists or is a file: /opt/datax/hook
2023-03-28 20:05:47.294 [job-0] INFO JobContainer -
[total cpu info] =>
averageCpu | maxDeltaCpu | minDeltaCpu
-1.00% | -1.00% | -1.00%
[total gc info] =>
NAME | totalGCCount | maxDeltaGCCount | minDeltaGCCount | totalGCTime | maxDeltaGCTime | minDeltaGCTime
PS MarkSweep | 0 | 0 | 0 | 0.000s | 0.000s | 0.000s
PS Scavenge | 0 | 0 | 0 | 0.000s | 0.000s | 0.000s
2023-03-28 20:05:47.294 [job-0] INFO JobContainer - PerfTrace not enable!
2023-03-28 20:05:47.294 [job-0] INFO StandAloneJobContainerCommunicator - Total 50 records, 950 bytes | Speed 95B/s, 5 records/s | Error 0 records, 0 bytes | All Task WaitWriterTime 0.000s | All Task WaitReaderTime 0.000s | Percentage 100.00%
2023-03-28 20:05:47.295 [job-0] INFO JobContainer -
任务启动时刻 : 2023-03-28 20:05:37
任务结束时刻 : 2023-03-28 20:05:47
任务总计耗时 : 10s
任务平均流量 : 95B/s
记录写入速度 : 5rec/s
读出记录总数 : 50
读写失败总数 : 0
二.安装DataX-Web
1. 简介
DataX Web
是在DataX
之上开发的分布式数据同步工具,提供简单易用的 操作界面,降低用户使用DataX的学习成本,缩短任务配置时间,避免配置过程中出错。用户可通过页面选择数据源即可创建数据同步任务,支持RDBMS
、Hive
、HBase
、ClickHouse
、MongoDB
等数据源,RDBMS
数据源可批量创建数据同步任务,支持实时查看数据同步进度及日志并提供终止同步功能,集成并二次开发xxl-job
可根据时间、自增主键增量同步数据。
任务"执行器"支持集群部署,支持执行器多节点路由策略选择,支持超时控制、失败重试、失败告警、任务依赖,执行器CPU.内存.负载的监控等等。后续还将提供更多的数据源支持、数据转换UDF、表结构同步、数据同步血缘等更为复杂的业务场景。
项目github地址
:DataX-Web
2.安装
下载源码文件
git clone https://hub.fgit.gq/WeiYe-Jing/datax-web.git
cd datax-web/
编译打包
mvn clean install
在build
目录下面生成打包后的文件,build/datax-web-2.1.2.tar.gz
,在选定的安装目录,解压安装包
tar xvf datax-web-2.1.2.tar.gz
进入解压后的目录,找到bin目录下面的install.sh
文件,跳过确认过程,则执行以下命令安装
cd datax-web/
./bin/install.sh --force
创建数据库create database dataxweb;
,目录下/bin/db/datax-web.sql脚本去手动执行
修改数据库配置vim modules/datax-admin/conf/bootstrap.properties
#Database
#DB_HOST=
#DB_PORT=
#DB_USERNAME=
#DB_PASSWORD=
#DB_DATABASE=
三.启动datax-web服务
一键启动所有服务
./bin/start-all.sh
一键取消所有服务
./bin/stop-all.sh
在Linux环境下使用JPS
命令,查看是否出现DataXAdminApplication和DataXExecutorApplication进程,如果存在这表示项目运行成功
24982 DataXExecutorApplication
24718 DataXAdminApplication
查看netstat -tnl
服务启动的端口
tcp6 0 0 :::9527 :::* LISTEN
tcp6 0 0 :::9504 :::* LISTEN
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!