JDK安装:CentOS安装JDK
Python安装:CentOS安装Python
MySQL安装:CentOS安装MySQL
注:MySQL必须允许dataX-web所在的服务器访问,否则会连不上mysql一直报错。
1、下载并解压datax
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
tar -zxvf datax.tar.gz
#进入相应目录
cd /opt/datax/bin
python datax.py../job/job.json
# 这里有reader和writer会显示报错,需要执行删除相应的文件即可(文件没看见,但还是执行一下)
执行 # rm -rf/opt/datax/plugin/reader/._*
执行 # python datax.py…/job/job.json
报错后再删除writer的相应目录
# rm -rf/opt/datax/plugin/writer/._*
最后再执行datax验证任务就能成功
# python datax.py…/job/job.json
# 解压
tar -zxvf datax-web-2.1.2.tar.gz
# 安装
cd datax-web-2.1.2/bin
sh install.sh
#一直Y确认,即可安装完成
datax-web-2.1.2/bin/db/datax_web.sql
vim datax-web-2.1.2/modules/datax-admin/conf/bootstrap.properties
DB_HOST=mysql
DB_PORT=3306
DB_USERNAME=datax
DB_PASSWORD=datax
DB_DATABASE=datax_web
#配置datax.py运行脚本位置
vim /datax-web-2.1.2/modules/datax-executor/bin/datax-executor.sh
cd /datax-web-2.1.2/bin
./start-all.sh
http://host:9527/index.html 账密(admin/123456)
datax源码内引入的MySQL驱动是5的版本,因此只支持连接mysql5版本,如果我们想要连接mysql8需要自己下载源码更改驱动并重新编译打包
下载源码
idea打开项目,进入mysqlreader,mysqlwriter模块修改pom.xml内的mysql驱动版本
<properties>
<mysql.driver.version>8.0.30mysql.driver.version>
properties>
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<version>${mysql.driver.version}version>
dependency>
1.全文替换 convertToNull 为 CONVERT_TO_NULL
2.全文替换mysql驱动类com.mysql.jdbc.Driver 为 com.mysql.cj.jdbc.Driver
mvn -U clean package assembly:assembly -Dmaven.test.skip=true
注:如果maven打包失败,提示test失败,可以吧对应的test包删除重新打包即可
#mysqlreader
cd datax/plugin/reader/mysqlreader/libs/
#删除mysql5的驱动jar,去自己maven仓库吧mysql8的驱动上传
#上传并覆盖原有文件 mysqlreader-0.0.1-SNAPSHOT.jar 和 plugin-rdbms-util-0.0.1-SNAPSHOT.jar
#mysqlwirter
cd datax/plugin/writer/mysqlwriter/libs/
#删除mysql5的驱动jar,去自己maven仓库吧mysql8的驱动上传
#上传并覆盖原有文件 mysqlreader-0.0.1-SNAPSHOT.jar 和 plugin-rdbms-util-0.0.1-SNAPSHOT.jar