github官方文档和项目:https://github.com/alibaba/DataX
下载后在windows环境下是可以直接用python编译执行的,但从github上下载的版本只支持python2.x版本,而现在python3.x正流行,这给我们带来不少麻烦。
在查找资料后我找到了解决办法:
datax 支持Python3需要修改替换datax/bin下面的三个python文件,替换文件地址:https://github.com/WeiYe-Jing/datax-web/tree/master/doc/datax-web/datax-python3
替换掉datax/bin下面这三个文件
替换完成后,亲测可以使用,我的python是3.8.1版本。
接下来我完成了datax的一个简单的入门测试,根据开头给出的github网址,找到官方文档
根据官方文档选择需要数据库和数据源的读写实例,配置job.json文件。
在操作之前需要在navicat中建立两个表,table1和table2,字段如图:
我想要测试一下mysql表之间的数据传输,参照mysql读写文档,配置了如下job.json:
{ "job": { "content": [ { "reader": { "name": "mysqlreader", "parameter": { "username": "root", "password": "123456", "column": [ "id", "name" ], "connection": [ { "table": [ "table1" ], "jdbcUrl": [ "jdbc:mysql://localhost/datax?characterEncoding=utf8" ] } ] } }, "writer": { "name": "mysqlwriter", "parameter": { "username": "root", "password": "123456", "column": [ "id", "name" ], "connection": [ { "table": [ "table2" ], "jdbcUrl": "jdbc:mysql://localhost/datax?characterEncoding=utf8" } ] } } } ], "setting": { "speed": { "channel": 1, "byte": 104857600 }, "errorLimit": { "record": 10, "percentage": 0.05 } } } }View Code
接下来用win+r打开cmd命令窗口,输入按照配置文件启动datax的命令:python D:\datax\datax\bin\datax.py D:\datax\datax\job\job3.json(注意自己的安装路径)
如果cmd出现乱码,输入CHCP 65001
最后出现如下结果表示任务完成:
我们打开table2,发现table1里的数据已经全导入进来了。