DataX数据迁移

DataX数据迁移

访问DataX Web管理页面:

http://ip:9527/index.html

用户名:admin,密码:123456

在这里插入图片描述

本文中示例将SqlServer数据增量同步到MySql中。

  1. 增量同步
  2. 同步时,MySql中的新字段设置默认值

1. 查看执行器是否注册成功

DataX 和DataX Web环境部署完成后,在执行器管理中,可以看到自动注册成功一个datax执行器。

在这里插入图片描述

2. 新增数据源

我们需要实现sqlserver同步数据到mysql,需要配置两个数据源。

在这里插入图片描述

3. 新建项目

任务是以项目维度管理,在新增任务时,需要配置项目名称。所以我们先新建一个项目。

在这里插入图片描述

4. 新建任务模板

创建一个任务模板,每30s执行一次任务。

在这里插入图片描述

5. 任务构建

通过任务构建的配置生成datax可以识别的json配置。

  1. 构建reader

    时间增量: update_time >=REPLACE(${lastTime},'%', ' ') and update_time < REPLACE(${currentTime},'%', ' ')
    

    在这里插入图片描述

    注意:

    • 有where条件时,sql语句可以不写,默认是select *
    • 根据时间增量时,lastTime和currentTime是两个变量,名称可以自定义,在后面的配置中注意匹配就可以
    • 我在配置时,使用REPLACE(${lastTime},‘%’, ’ ') ,将时间中的%替换成空格。是因为我的sqlserver表中update_time字段是datetime类型,格式为yyyy-MM-dd HH:mm:ss,但是在执行任务时,通过查看日志发现,查询的sql中,变量的时间是yyyy-MM-dd%HH:mm:ss这种格式,导致查询报错。所以我使用了REPLACE函数替换%,此处具体配置要看自己的环境。
  2. 构建writer

    在这里插入图片描述

  3. 选择需要映射的字段

    在这里插入图片描述

  4. 构建

    在这里插入图片描述

    配置完成后,点击下一步,此时进入任务管理页面,我们可以看到构建好的一个任务。

    在这里插入图片描述

6. 修改任务

由于我们需要增量同步,并且要对status配置默认值,之前的构建过程中,并没有传入时间参数的位置,也没有配置默认参数的位置。所以我们需要对任务进行修改。

  1. 在任务管理中点击编辑

    在这里插入图片描述

  2. 配置时间自增

    在这里插入图片描述

    • 辅助参数选择时间自增
    • 增量开始时间即第一次执行的起始时间,自定义设置
    • 增量时间格式选择匹配数据库中的时间格式
    • 增量时间字段 -DlastTime=‘%s’ -DcurrentTime=‘%s’
      • -D是datax参数的标识符,必须这么写
      • -D后面的lastTime和currentTime是传入where条件的参数名,可自定义名称。和我们之前配置sql的变量名匹配上就行。
      • %s是用来替换变量的占位符
      • -DlastTime=‘%s’和-DcurrentTime=’%s’中间有一个空格,并且必须是一个空格
  3. 配置status默认值

    我们之前提到,reader和writer的字段必须一一对应,但是之前的配置中,writer比reader多一个status字段,我们需要配置默认参数。

    修改自动生成的json配置,在reader的column中增加一个一个字段,“‘启用’ as status”,意思为:给status字段默认赋值为启用,由于是字符串类型,所以启用也需要加引号。

    在这里插入图片描述

  4. 至此,修改完成,保存后,启动任务。

7. 查看任务执行日志

在这里插入图片描述

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于将数据从MySQL迁移到Oracle,可以使用DataX工具来实现。DataX是一个开源的数据同步框架,可以用于不同数据库之间的数据迁移。下面是具体的步骤: 1. 了解DataX:首先,你需要了解DataX的基本概念和使用方式。DataX是一个基于插件化的架构,可以支持不同的数据源和目标数据库,包括MySQL和Oracle。 2. 下载和安装DataX:在进行数据迁移之前,你需要下载并安装DataX工具。你可以从DataX的官方网站或GitHub上获取最新的安装包。 3. 配置DataX作业:接下来,你需要创建一个DataX的作业配置文件,用于指定源数据库和目标数据库的连接信息、表名、字段映射等。在配置文件中,你需要指定源数据库为MySQL,目标数据库为Oracle,并提供相应的连接信息。 4. 执行DataX作业:配置完成后,你可以使用DataX命令行工具来执行该作业。DataX会根据配置文件中的信息,将数据从MySQL读取并写入到Oracle中。 需要注意的是,在执行DataX作业之前,你需要确保源数据库和目标数据库的连接正常,并且具有相应的权限。此外,如果源数据库和目标数据库的表结构不一致,你可能需要进行字段映射和转换,以确保数据能够正确地导入到目标数据库中。 这是一个简单的示例,用于说明如何使用DataX数据从MySQL迁移到Oracle。具体的步骤和配置可能会因实际情况而有所不同,请根据你的具体需求和环境进行相应的调整和配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [DATAX 数据迁移 oracle-oracle](https://blog.csdn.net/weixin_42418589/article/details/126019261)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [使用datax数据从mysql迁移到oracle](https://blog.csdn.net/qq_38390669/article/details/109524637)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值