DataX 是阿里开源的一个组件。 项目地址在 https://github.com/alibaba/DataX

安装

使用二进制包

直接下载编译好的dist包。 下载地址

下载完成之后解压。 然后进入解压目录。 执行以下命令完成自检

cd datax
python bin/datax.py job/job.json  # 注意使用的是 python2

自行编译

下载好代码之后执行如下命令, 生成的包在 target 目录下的 datax 和 datax.tar.gz

mvn -U clean package assembly:assembly -Dmaven.test.skip=true

查看 job 配置模板

# 查看 reader 是 sqlserver, writer 是 mysql 的配置模板
python2 bin/datax.py -r sqlserverreader -w mysqlwriter

会生成如下内容

{
    "job": {
        "content": [
            {
                "reader": {
                    "name": "sqlserverreader", 
                    "parameter": {
                        "connection": [
                            {
                                "jdbcUrl": [], 
                                "table": []
                            }
                        ], 
                        "password": "", 
                        "username": ""
                    }
                }, 
                "writer": {
                    "name": "mysqlwriter", 
                    "parameter": {
                        "column": [], 
                        "connection": [
                            {
                                "jdbcUrl": "", 
                                "table": []
                            }
                        ], 
                        "password": "", 
                        "preSql": [], 
                        "session": [], 
                        "username": "", 
                        "writeMode": ""
                    }
                }
            }
        ], 
        "setting": {
            "speed": {
                "channel": ""
            }
        }
    }
}

按标准输出即可, 具体参数说明可以参考 官方文档

测试用例:

python2 bin/datax.py job/job.json