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条记录)
相关推荐
孤廖2 分钟前
【算法磨剑:用 C++ 思考的艺术・Dijkstra 实战】弱化版 vs 标准版模板,洛谷 P3371/P4779 双题精讲
java·开发语言·c++·程序人生·算法·贪心算法·启发式算法
码畜也有梦想15 分钟前
Maven中optional的作用
java·jenkins·maven
云和数据.ChenGuang34 分钟前
java常见SSL bug解决方案
java·bug·ssl
songx_9936 分钟前
leetcode29( 有效的括号)
java·数据结构·算法·leetcode
于樱花森上飞舞42 分钟前
【java】常见排序算法详解
java·算法·排序算法
维持好习惯1 小时前
复杂Excel文件导入功能(使用AI快速实现)
java·spring boot·excel
酷炫码神1 小时前
第 2 篇:Java 入门实战(JDK8 版)—— 编写第一个 Java 程序,理解基础运行逻辑
java·开发语言·策略模式
月阳羊1 小时前
【硬件-笔试面试题-93】硬件/电子工程师,笔试面试题(知识点:波特图)
java·经验分享·单片机·嵌入式硬件·面试
choice of1 小时前
SpringMVC通过注解实现全局异常处理
java·后端·spring
单线程bug1 小时前
Spring Boot中Filter与Interceptor的区别
java·spring boot·后端