使用DataX同步数据库数据,并使用DataX-Web创建同步任务

本文详细介绍了如何安装DataX并使用其进行数据同步,包括配置环境、创建JSON文件进行数据流测试,以及安装DataX-Web进行可视化管理。通过DataX-Web创建数据源、项目和任务,实现了数据库之间的数据同步。
摘要由CSDN通过智能技术生成

一、安装DataX

  1. 首先需要安装jdk和python环境
  1. 从网上下载datax压缩包datax下载
  1. 将压缩包上传至服务器,并解压
 tar -xzvf datax.tar.gz
  1. 切换到datax目录下的bin目录,并创建json文件夹用于存放json文件
  1. 在json文件夹中创建一个测试文件test.json
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "streamreader",
          "parameter": {
            "column": [
              {
                "type": "string",
                "value": "Hello."
              },
              {
                "type": "string",
                "value": "world"
              },
              
            ],
            "sliceRecordCount": "3"
          }
        },
        "writer": {
          "name": "streamwriter",
          "parameter": {
            "encoding": "utf-8",
            "print": true
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": "2"
      }
    }
  }
 }
  1. 切换到datax的bin目录下执行
 python datax.py ./json/test.json
  1. 测试数据库同步
  1. 创建两个数据库,拥有相同的表user,库1user表有数据,库2user表无数据

库1:

库2:

  1. 在json目录下创建mysql2msql.jsom文件
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "mysqlreader",
          "parameter": {
            "username": "root",
            "password": "123456",
            "column": [
              "*"
            ],
            "splitPk": "id",
            "connection": [
              {
                "table": [
                  "user"
                ],
                "jdbcUrl": [
                  "jdbc:mysql://127.0.0.1:3306/ynjkm"
                ]
              }
            ]
          }
        },
        "writer": {
          "name": "mysqlwriter",
          "parameter": {
            "writeMode": "insert",
            "username": "root",
            "password": "123456",
            "column": [
              "*"
            ],
            "preSql": [
              "truncate user"
            ],
            "connection": [
              {
                "jdbcUrl": "jdbc:mysql://1270.0.1:3306/ynjkm2?useUnicode=true&characterEncoding=utf8",
                "table": [
                  "user"
                ]
              }
            ]
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": 6
      }
    }
  }
}
  1. 在datax的bin目录下执行
 python datax.py ./json/mysql2mysql.json 

执行完成

库2user表可以看到已经被同步过来

二、安装DataX-Web

为了更方便进行数据同步,可以安装DataX-Web进行可视化管理

  1. 下载DataX-Web压缩包DataX-Web下载
  1. 将压缩包上传到指定目录并解压
  1. 进入解压后的目录,执行命令,并选择安装datax-web的数据库
./bin/install.sh  

  1. 进入安装目录,编辑 env.properties,修改PYTHON_PATH
 vi ./modules/datax-executor/bin/env.properties

  1. 进入安装目录,执行
./bin/start-all.sh

  1. 查看是否启动

  1. 打开datax-web面板

地址:ip:9527/index.html 账号:admin 密码:123456

  1. 创建数据源,其中db1中user有数据,db2中user无数据
  1. 创建项目
  1. 创建任务模板
  1. 构建任务,选择模板,将json中byte和errorlimit删除
  1. 查看任务
  1. 测试任务,选择操作,执行一次任务,并查看日志
  1. 查看库2user表,数据已经被同步过来

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

工地精神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值