datax安装部署

datax下载地址,链接: https://pan.baidu.com/s/1VoF8kvhMtK1psdKhPJl-Zg 提取码: srmu

下载后直接解压后可用,前提是对应的 java 及 python 环境满足要求。其中对应的JavaJDK版本推荐1.8,Python推荐Python2.6.X

由于我本地 python 为 3.7.0 ,所以把 /datax/bin 目录下的三个py文件修改成了符合 python3 语法要求的文件,执行也没报错,修改后的文件,如需要可下载替换:链接: https://pan.baidu.com/s/1zD2QCp1X7dVQHo0jdpVj8Q 提取码: 3pur

测试

测试配置了一个读取 csv 写入到另一个 csv 的 json

第一步、创建作业的配置文件(json格式)
test.json

{
    "setting": {},
    "job": {
        "setting": {
            "speed": {
                "channel": 2
            }
        },
        "content": [
            {
                "reader": {
                    "name": "txtfilereader",
                    "parameter": {
                        "path": ["E:\test.csv"],
                        "encoding": "UTF-8",
                        "column": [
                            {
                                "index": 0,
                                "type": "long"
                            },
                            {
                                "index": 1,
                                "type": "long"
                            },
                            {
                                "index": 2,
                                "type": "long"
                            }
                        ],
                        "fieldDelimiter": ",",
                        "skipHeader": "False"
                    }
                },
                "writer": {
                    "name": "txtfilewriter",
                    "parameter": {
                        "path": "E:\test",
                        "fileName": "test",
                        "writeMode": "truncate",
                        "format": "yyyy-MM-dd",
                        "header":['id', 'name', 'age']
                    }
                }
            }
        ]
    }
}
View Code

第二步:启动 DataX

python datax.py D:DataX-json est.json

问题及解决

  • Python 版本要为 2,原因前面已经说过了,可手动修改为 3 的语法
  • cmd 乱码解决:输入 CHCP 65001
  • 数据库中的数据中文乱码解决:在 json 文件中 jdbcUrl 项加上:?characterEncoding=utf8

参考博客:https://blog.csdn.net/weixin_41287692/article/details/83620261

原文地址:https://www.cnblogs.com/yuanxiaochou/p/12418585.html