为了掌握大数据采集技术,自学习了datax的使用
简介:
DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、HDFS、Hive、OceanBase、HBase、OTS、ODPS 等各种异构数据源之间高效的数据同步功能。
首先下载datax.tar.gz
运行datax.py需要一定的要求:1.JDK(1.6以上) 2.python版本2.x(因为源代码中的语法问题,其他版本会出现运行错误)
本人安装的是python3.7,在datax.py中官方代码中的print没有加括号会导致运行时出错,我修改了源代码,加上括号之后还需要将 except Exception, e:改为 except Exception as e: 因为这是python3中的语法。
利用datax将.csv文件中的数据同步导入mysql中,首先需要配置json文件,这里可以在datax/job下,根据他提供的job.json来配置自己的json文件,配置好直接运行命令: python datax json目录即可, 这里需要在datax/bin目录下运行此命令。
遇到的问题:即将尝试执行第1次重试.本次重试计划等待[1000]ms,实际等待[1000]ms, 异常Msg:[Code:[DBUtilErrorCode-10], Description:[连接数据库失败. 请检查您的 账号、密码、数据库名称、IP、Port或者向 DBA 寻求帮助(注意网络环境).]. - 具体错误信息为:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.]
因为我之前将mysql版本改为8.x ,所以需要将其连接数据库的jdbc驱动包更换(其在目录datax\plugin\reader\mysqlreader下)
乱码问题可通过输入命令 CHCP 65001解决
至此数据成功导入到数据库中。
原文:https://www.cnblogs.com/zjl-0217/p/12392590.html