DataX的安装使用

news2024/9/29 21:28:17

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/DataXicon-default.png?t=N7T8https://github.com/alibaba/DataX

2:创建json文件,最好建在bin目录下。(mysql-mysql为例)
{
    "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目录,执行命令。
python datax.py E:\datax\datax.tar\datax\bin\mysqlTomysql.json //自己的json文件目录(在bin目录下运行此命令)

4:查看结果(写入成功,共8条记录)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1386489.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第27集《佛法修学概要》

丁二、天乘分三:戊一、十善业。戊二、四禅定。戊三、四空定 请大家打开讲义第七十七页,这是五乘里面的第二个法门,天乘法门。 大乘佛教把我们众生生命的现象分成了三个部分:第一个部分,叫作 本来清净;第…

如何优化测试用例设计,节约时间?

进一步优化测试用例设计,不仅可以减少测试用例数量和冗余,还可以减少执行时间,缩短测试周期,更快发现和修复问题,提高测试的质量。而没有优化的测试用例设计可能会导致冗余和重复的测试用例,增加了测试人员…

【Flink-1.17-教程】-【一】Flink概述、Flink快速入门

【Flink-1.17-教程】-【一】Flink概述、Flink快速入门 1)Flink 是什么1.1.有界流和无界流1.2.Flink 的发展史 2)Flink 特点3)Flink vs SparkStreaming4)Flink 的应用场景5)Flink 分层 API6)Flink 快速入门6…

Unity寻路A星算法

文章目录 实现步骤概览: 计算移动成本1. **定义移动成本函数**:2. **考虑不同类型的格子**:3. **动态调整成本**:4. **实际应用**: 优先级队列1. **初始化**:2. **节点评估**:3. **更新节点状态…

电脑桌面便签在哪设置?备忘录软件哪个好?

好记性不如烂笔头!相信很多打工族在电脑面前办公的时候,都需要随时记录工作中的事项,有的用TXT记录,有的手写笔记,还有一些用电脑桌面便签类软件。而当我们待办事项繁多的时候,手写或文本记录并不能有效帮我…

删除运行框中的文件打开历史记录

当我们使用everything、百度、迅雷等软件,在列表中右键选中打开文件夹时。 当使用 winR 快捷键等方式打开运行时,输入盘符会出现之前打开过的文件夹, 一方面展示的特别多会比较混乱,另一方面 记得在之前的window版本中&#xff08…

What is `@Repository` does?

Repository 是Spring注解,标识数据访问层组件(DAO, Data Access Object) 当一个类被标记为 Repository 时: 1、组件扫描与自动代理: Spring通过组件扫描(Component Scan)机制发现带有 Reposit…

KEIL MDK 工程(.uvprojx)目录更改后快速修改方法

概述 在项目过多时,为了方便管理, 需借用文件夹命名来,举例: 1、原工程是在“STM32_Test_Project\MDK-ARM”目录下,我现在创建新文件夹,“Test”,避免原来的受污染,或者好管理等等好…

Linux 多个php版本选择需要的php的版本(修改环境变量)

这两天遇到了个问题, 原本服务器的php版本是7.3.13,经过一些操作之后不知道怎么了变成了5.6 #php版本查看 php -v然后我就对 5.6版本进行了升级,升级到了7.3.33, 这个时候 php -v 是7.3.33, 神奇的一幕出现了&#xf…

鸿蒙开发之组合手势

当我们需要支持多个手势的时候,可以通过GestureGroup来实现,如下实现了同时支持Tap和Pan手势 import Prompt from system.prompt Entry Component struct OfficialGestureGroupPage {State message: string Hello Worldbuild() {Column() {Column() {T…

STM32F103标准外设库——认识STM32(一)

个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:V…

SSH远程访问与控制

目录 ssh优点 作用 SSH的 软件 公钥首次连接原理 ssh远程登录 shh命令 远程连接 直接连接先输入ssh IP 连接指定用户 在 /etc/ssh/sshd_config下面修改端口号 修改服务端配置文件 ​编辑 白名单,只能登录本机的mcb用户 SSH服务的最佳实践 openSSH 服…

Vue.js轻量级框架:快速搭建可扩展的管理系统

一、前言 在项目实战开发中,尤其是大平台系统的搭建,针对不同业务场景,需要为用户多次编写用于录入、修改、展示操作的相应表单页面。一旦表单需求过多,对于开发人员来说,算是一种重复开发,甚至是繁杂的工作…

NetCore部署微服务(三)

接上文,服务端部署完成之后,同样我们也需要修改一下客户端代码 Blocking Queries 1.1 服务发现 在客户端代码中使用Nuget安装consul包 修改配置文件,我们首先需要把consul的请求地址配置在配置文件中 修改control方法 using Consul; usin…

第七在线荣获百灵奖 Buylink Awards 2023零售圈年度卓越服务商品牌

1月11日,由零售圈主办、20零售连锁协会协办、30零售行业媒体支持的中国零售圈大会暨2024未来零售跨年盛典在西安落下帷幕,在这个零售行业盛典中,第七在线凭借其高精尖产品和卓越的服务质量成功入选,并荣获了“百灵奖 Buylink Awar…

旧路由重置新路由设置新路由设置教程|适用于PPPoE拨号

前言 前几天朋友说路由器想要重置,但不知道怎么弄。所以就想着只帮忙重置路由器的话,只能帮到一个人。但把整个过程写成图文,就可以帮助更多人。 本文章适合电脑小白,请注意每一步哦! 注意事项 开始之前需要确认光猫…

深度学习环境常用命令(持续更新......)

深度学习涉及常用命令 在深度学习过程中常涉及的命令记录备查。 本文中涉及命令均在windows上,使用Anaconda管理环境的情况下。 显卡环境相关命令 1.pytorch下查看cuda版本,查看cudnn版本 import torch print(torch.version.cuda) print(torch.back…

Docker 如何安装 MySQL 并实现远程连接

Hello各位小伙伴们大家好!我是咕噜铁蛋!随着云计算和容器化技术的兴起,Docker 已经成为现代软件开发的核心工具之一。它提供了一种轻量级、可移植、自包含的部署方式,使得开发人员可以更加便捷地构建、测试和发布应用程序。而 MyS…

docker安装部署Elasticsearch(ES)以及相关配置

Elasticsearch简介 mysql用作持久化存储,ES用作检索 基本概念:index库>type表>document文档 index索引(相当于MySQL的数据库) 动词:相当于mysql的insert 名词:相当于mysql的db Type类型&#xff…

Rust-借用检查

Rust语言的核心特点是:在没有放弃对内存的直接控制力的情况下,实现了内存安全。 所谓对内存的直接控制能力,前文已经有所展示:可以自行决定内存布局,包括在栈上分配内存,还是在堆上分配内存;支…