当前位置: 首页 > news >正文

docker安装datax详细步骤

概述:

  近期在接手MySQL数据库同步任务时,对比分析了现有开源工具DataX和Canal。DataX适用于离线数据库同步(支持多数据库),而Canal仅支持MySQL实时同步。综合考虑后决定采用DataX。
  研究DataX源码发现,该工具基于Java开发,同时包含Python和其他语言组件,并依赖MySQL作为缓存服务。因此完整部署需要三个组件:DataX本体、DataX-web管理界面以及MySQL数据库。
  在华为欧拉系统上采用Docker部署时,发现高版本Docker对MySQL5.7兼容性不佳(存在内存管理缺陷,即使调整配置参数仍会占用过高内存),故改用MySQL8.0。需说明的是,此处安装MySQL8.0仅服务于DataX运行,不影响后续同步操作的数据库版本兼容性。

安装步骤:

1、安装msql
a、安装教程请查看:https://blog.csdn.net/qq_21223653/article/details/148768515?sharetype=blogdetail&sharerId=148768515&sharerefer=PC&sharesource=qq_21223653&spm=1011.2480.3001.8118
b、运行sql语句: git上与百度云上都可以,是一样的
数据来源1: datax-web/bin/db/datax_web.sql at master · WeiYe-Jing/datax-web · GitHub
数据来源2:通过网盘分享的文件:datax_web.sql
链接: https://pan.baidu.com/s/1wn9V4dLGPHLhM93ZhmIieg 提取码: kig6
不过datax-web运行后报错信息有 job_info 表中没有名为 user_id,估计是sql语句不是最新的;

2、安装DataX-Web
1)DataX-Web镜像拉取
使用的镜像是网上找到用得比较多的。3.0.1已经包含了datax与datax-web

docker pull linshellfeng/datax_web:3.0.1

2)创建Docker文件挂载目录
a、主要是容器映射的配置文件

  mkdir /data/docker-datax/confmkdir /data/docker-datax/replace_bag

b、下载datax.tar.gz到replace_bag下,后续用以替换。这一步不要省略,后续我们会将datax替换为最新版
下载地址:https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202308/datax.tar.gz

3)配置文件获取和处理
a、先创建临时容器用于获取配置文件

docker run --name datax-web -p 9527:9527 -d linshellfeng/datax_web:3.0.1 

b、从容器内复制datax-web的运行mysql配置文件

  docker cp datax-web:/home/datax/datax-web-2.1.2/modules/datax-admin/conf/bootstrap.properties  /data/docker-datax/conf/bootstrap.properties 

c、停用并删除临时容器

 docker stop datax-webdocker rm datax-web

d、编辑bootstart.propertis 修改对应datax-web需要的数据库

DB_HOST=mysql8.0
DB_PORT=3306
DB_DATABASE=datax
DB_USERNAME=root
DB_PASSWORD=root

DB_HOST改为你自己的mysql链接地址;

4)启动datax容器

docker run --ulimit nofile=1024:1024 -p 9527:9527 --name datax-web -v /data/docker-datax/conf/bootstrap.properties:/home/datax/datax-web-2.1.2/modules/datax-admin/conf/bootstrap.properties -d linshellfeng/datax_web:3.0.1

为什么添加 --ulimit nofile=1024:1024 ,涉及到一个jdk8的bug,可以看一下:https://blog.csdn.net/hiliang521/article/details/147403248?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-147403248-blog-137122868.235v43pc_blog_bottom_relevance_base4&spm=1001.2101.3001.4242.1&utm_relevant_index=3

3、替换DataX为最新版
(1)datax压缩包复制到容器里。

docker cp /data/docker-datax/replace_bag/datax.tar.gz datax-web:/home/datax/datax.tar.gz

(2)进入容器,删除容器的datax整个文件夹;
路径:/home/datax/datax,最好备份原先的/home/datax/datax

#进入容器
docker exec -it datax-web /bin/bash
cd /home/datax/
#备份
cp -r datax datax_backup
#删除
rm -rf datax

(3)解压到路径/home/datax/下

cd /home/datax/
tar -zxvf datax.tar.gz -C /home/datax/

4、core配置文件修改
(1)进入容器编写
docker exec -it datax-web /bin/bash
vi /home/datax/datax/conf/core.json
(2)修改core->transport->channel->speed->byte为2000000
在这里插入图片描述

在这里插入图片描述
5、容器网络联通
(1)创建一个自定义 bridge 网络,容器可以通过容器名互相访问

docker network create datax-net

(2)网络联通

#关联到Datax-Web的运行Mysql容器
docker network connect datax-net mysql
#关联到Datax-Web容器
docker network connect datax-net datax-web

6、访问data-web
(1)地址:http://127.0.0.1:9527/index.html
(2)账号:admin
(3)密码:123456

7、日志查看
(1)容器内查看DataX-Web错误日志(最近100行)

docker exec -it datax-web /bin/bash
tail -n 100 /home/datax/datax-web-2.1.2/modules/datax-admin/bin/console.out

参考:https://blog.csdn.net/qq_27295403/article/details/148282380#comments_37439441

http://www.lqws.cn/news/453241.html

相关文章:

  • AUTOSAR实战教程--OS调试利器ORTI文件使用说明OSEK调试方法
  • OBCP第二章 OceanBase 存储引擎高级技术学习笔记
  • 63 网络交互的过程中目标设备的选择
  • PROFIBUS DP 转 EtherCAT 网关:冶金自动化高效协同的基石
  • 深入剖析HashMap与LinkedHashMap应用
  • 前端页面Javascript数组
  • python之使用cv2.matchTemplate识别缺口滑块验证码---实现最佳图像匹配
  • 主流测距技术深度解析:激光雷达、UWB、微波与视觉方案的全面对比
  • 今日行情明日机会——20250620
  • 响应式数据可视化大屏解决方案,重构工业交互体验
  • 【深度学习基础与概念】笔记(一)深度学习革命
  • 【Golang】go build 命令选项-ldflags用法
  • Spring @ModelAttribute注解全解析:数据绑定与模型管理
  • ceph 通过 crush rule 修改故障域
  • DataWhale-零基础络网爬虫技术(二er数据的解析与提取)
  • LeetCode热题100—— 169. 多数元素
  • leetcode 291. Word Pattern II和290. Word Pattern
  • 解锁数据宝藏:数据挖掘之数据预处理全解析
  • 在Django中把Base64字符串保存为ImageField
  • 思辨场域丨AR技术如何重塑未来学术会议体验?
  • LVS vs Nginx 负载均衡对比:全面解析
  • leetcode-2966.划分数组并满足最大差限制
  • 多相机三维人脸扫描仪:超写实数字人模型制作“加速器”
  • Android Java语言转Kotlin语言学习指导实用攻略
  • 单片机3种按键程序消抖方法
  • DB-GPT启动提示please install by running `pip install cryptography`
  • 函数指针的回调函数与函数跳转执行
  • 国产芯片能在服务器领域替代Intel(经验总结贴)
  • Git——分布式版本控制工具
  • 【MySQL篇07】:redo log日志与buffer pool详解