张小白DataX踩坑记(二)

举报
张辉 发表于 2022/02/19 17:11:29 2022/02/19
【摘要】 实现MySQL数据库表迁移到ES。

前情回顾:

张小白DataX踩坑记(一) https://bbs.huaweicloud.com/blogs/330796


上回书说到 张小白试了3种使用DataX的方法:

windows下源码编译,windows wsl2的ubuntu下源码编译,使用官方做好的包,结果都不同程度的遇到问题,走不下去。

虽然感觉马爸爸做的东西也不过尔尔,但是毕竟只是个开源软件,有些东西还是要自己去折腾的。

想到这一点,张小白还是觉得拿CentOS7.6的虚拟机再试一下吧。

这次为了保险,张小白连maven都自己装了。


执行编译:

结果到了tsdbwriter的时候出错了。想想张小白也没有tsdb这个库。

于是打开pom.xml

强行把 tsdbwriter 这段module注释掉,再重新编译:

。。

终于编译成功!

生成的文件在 ~/DataX/target目录下。

真正编译好的datax.py放在 ~/DataX/target/datax/datax/bin目录下:

把(一)中的json文件拷贝到这个目录下。

执行python3 datax.py mysql_es7_huaweicloud.json

我们的json脚本是从mysql导出,导入到es。从日志上看,则mysql连接串少了ssl的控制。于是根据提示增加useSSL=false的参数。

再执行一遍:

从日志上来看,mysql的那条记录被读出来了,写入了ES。

我们用kibana看看:

可以看到有个my_user索引已被建立。可以看到具体的结构:

我们可以通过dsl查看ES中的内容:

http://IP:9200/my_user/_search

输入elastic的密码后:

可以看到ES里面的内容跟MySQL数据库表中的内容(这两个字段)是一致的:

于是,我们终于实现了第一次数据表的迁移。

(未完待续)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。