DataX的安装使用

DataX概述:

DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、HDFS、Hive、OceanBase、HBase、OTS、ODPS 等各种异构数据源之间高效的数据同步功能。DataX采用了框架 + 插件 的模式,目前已开源,代码托管在github。

安装部署:

环境准备:

System Requirements:

Linux/本地也可

JDK(1.6以上,推荐1.6)

Python(推荐Python2.6.X)一定要为python2,因为后面执行datax.py的时候,里面的python的print会执行不了,导致运行不成功,会提示你print语法要加括号,python2中加不加都行 python3中必须要加,否则报语法错

Apache Maven 3.x (Compile DataX)

1:下载安装包并解压。

下载地址:https://github.com/alibaba/DataXhttps://github.com/alibaba/DataX

2:创建json文件,最好建在bin目录下。(mysql-mysql为例)
java 复制代码
{
    "job": {
        "content": [
            {
                "reader": {
                    "name": "mysqlreader", 
                    "parameter": {
                        "column": [
						"StudentNo",
                        "LoginPwd",
                        "StudentName",
                        "Sex",
                        "GradeId",
                        "Phone",
                        "Address",
                        "BornDate",
                        "Email" //读取的列(示例,依据自己需求更改)
						], 
                        "connection": [
                            {
                                "jdbcUrl": ["jdbc:mysql://ip:端口/数据库?characterEncoding=utf8"], 
                                "table": ["表名(读取的)"]
                            }
                        ], 
                        "password": "密码", 
                        "username": "账号"
                    }
                }, 
                "writer": {
                    "name": "mysqlwriter", 
                    "parameter": {
                        "column": [
                        "StudentNo",
                        "LoginPwd",
                        "StudentName",
                        "Sex",
                        "GradeId",
                        "Phone",
                        "Address",
                        "BornDate",
                        "Email" //写入的列(示例,依据自己需求更改)
						], 
                        "connection": [
                            {
                                "jdbcUrl": "jdbc:mysql://ip:端口/数据库?characterEncoding=utf8", 
                                "table": ["表名(写入的)"]
                            }
                        ], 
                        "password": "密码", 
                        "username": "账号"
                    }
                }
            }
        ], 
        "setting": {
            "speed": {
                "channel": "1"
            }
        }
    }
}
3:打开终端,进入解压的datax的bin目录,执行命令。
java 复制代码
python datax.py E:\datax\datax.tar\datax\bin\mysqlTomysql.json //自己的json文件目录(在bin目录下运行此命令)
4:查看结果(写入成功,共8条记录)
相关推荐
小羊没烦恼!5 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里5 天前
java中的继承和多态的区别
java
小羊没烦恼!5 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕5 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码5 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖5 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时5 天前
01-06-A-JVM排查实战详解
java·jvm
vipxieliang5 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
ba_pi5 天前
mysql 查询所有表名并授权
java
ProcessOn官方账号5 天前
java函数式编程--入门基础
java·编程·函数式编程