Datax本地idea测试

  1. github上下载datax的源代码,本地解压导入idea

下载最新版的源代码:
https://github.com/alibaba/DataX/
Download ZIP

下载历史版本的源代码:
找到 Releases,选择版本,进行下载
在这里插入图片描述

解压后用idea打开
在这里插入图片描述
修改项目的maven的配置在这里插入图片描述
修改父工程的pom文件,选择你要测试的组件,不需要的组件可以注释掉,比如我测试mysql迁移mysql,那么我需要mysqlreader组件、mysqlwriter组件,在保留mysqlreader、mysqlwriter、以及datax公用的组件,其他全部注释掉
在这里插入图片描述
在这里插入图片描述
最终保留的子项目如下,pom中的其他内容不需要修改

<modules>
        <module>common</module>
        <module>core</module>
        <module>transformer</module>
        <!-- reader -->
        <module>mysqlreader</module>
         <!-- writer -->
        <module>mysqlwriter</module>
        <!-- common support module -->
        <module>plugin-rdbms-util</module>
        <module>plugin-unstructured-storage-util</module>
        <module>hudiwriter</module>
</modules>

刷新maven,等待依赖下载完毕

进入到项目最外层的目录输入CMD(前提配置了本地MAVEN的环境变量)

使用MAVEN命令打包
mvn -U clean package assembly:assembly -Dmaven.test.skip=true

打包完成后在target目录下生成了datax目录
在这里插入图片描述
在core下找到Datax的启动入口类Engine
在这里插入图片描述
配置Engine的Datax安装目录,要执行的json任务
找到main方法,在main下添加两行

//设置系统变量,也就是datax的目录路径
System.setProperty(“datax.home”,“D:\ \DataX-master\DataX-master\target\datax\datax”);
//设置job路径和一些参数
String[] datxArgs = {“-job”, “D:\ \DataX-master\DataX-master\job\MySQLToMySQL.json”, “-mode”, “standalone”, “-jobid”, “-1”};

Engine.entry(args); 修改为Engine.entry(datxArgs);

修改json任务内容
在这里插入图片描述
运行Engine
在这里插入图片描述
在这里插入图片描述
如果要放到集群测试

打包后将插件上传到集群的DATAX对应目录
写好配置文件mysqltomysql.json
运行命令:

python /opt/module/datax/bin/datax.py -p “-Dpath=/data/warehouse/rsd/t_rsd_amber_agent_event_log/2019/06/05” /opt/module/datax/job/mysqltomysql.json

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值