文章目录
前言
公司有需求要用到 dataX ,提前进行安装,本次主要主要用到
- dataX:数据同步
- DataX web:可视化使用 dataX
Git地址
https://github.com/alibaba/DataX
https://github.com/WeiYe-Jing/datax-web
前置说明
我采用的不是源码安装,是直接下载解压,然后启动的,所以可能不需要那么的环境配置,这里我只是安装了java 和 python
关于 java 自行百度 安装吧, 因为服务器已经安装了…
pythone:https://blog.csdn.net/ke52013/article/details/119029144
dataX
安装
创建目录
mkdir -p /opt/datax
进入到目录
cd /opt/datax
下载文件
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
解压
tar -zxvf datax.tar.gz
测试
cd /opt/datax/datax/
# 直接执行下列命令
bin/datax.py job/job.json
如果报错
插件[streamreader,streamwriter]加载失败,1s后重试… Exception:Code:[Common-00], Describe
# 先进入安装目录
cd /opt/datax/datax/
# 在进入插件目录
cd plugin/reader
# 删除
rm -rf ./._*
# 在进入插件目录
cd plugin/writer
# 删除
rm -rf ./._*
测试
cd /opt/datax/datax/
# 直接执行下列命令
bin/datax.py job/job.json
我是没问题的…
dataX web
安装
下载地址:https://github.com/WeiYe-Jing/datax-web/blob/master/doc/datax-web/datax-web-deploy.md
百度云下载
这里我将文件上传到了/opt/datax/
解压文件
tar -zxvf datax-web-2.1.2.tar.gz
开始部署
2)执行一键安装脚本
进入解压后的目录,找到bin目录下面的install.sh文件,如果选择交互式的安装,则直接执行
./bin/install.sh
在交互模式下,对各个模块的package压缩包的解压以及configure配置脚本的调用,都会请求用户确认,可根据提示查看是否安装成功,如果没有安装成功,可以重复尝试;
如果不想使用交互模式,跳过确认过程,则执行以下命令安装
./bin/install.sh --force
3)数据库初始化
如果你的服务上安装有mysql命令,在执行安装脚本的过程中则会出现以下提醒:
Scan out mysql command, so begin to initalize the database
Do you want to initalize database with sql: [{INSTALL_PATH}/bin/db/datax-web.sql]? (Y/N)y
Please input the db host(default: 127.0.0.1):
Please input the db port(default: 3306):
Please input the db username(default: root):
Please input the db password(default: ):
Please input the db name(default: exchangis)
按照提示输入数据库地址,端口号,用户名,密码以及数据库名称,大部分情况下即可快速完成初始化。
如果服务上并没有安装mysql命令,则可以取用目录下${你自己打dataXweb安装目录}/bin/db/datax-web.sql
脚本去手动执行,完成后修改相关配置文件
vi ./modules/datax-admin/conf/bootstrap.properties
这里是我配置,由于我连接的是本地服务器,
#Database
DB_HOST=127.0.0.1
DB_PORT=3307
DB_USERNAME=root
DB_PASSWORD=123456
DB_DATABASE=datax
按照具体情况配置对应的值即可。
4) 配置DataX
安装完成之后,
在项目目录下/modules/datax-execute/bin/env.properties 指定PYTHON_PATH的路径
# 进入到安装目录
cd /opt/datax/data-web-2.1.2
# 编辑配置
vim modules/datax-executor/bin/env.properties
### 执行datax的python脚本地址
PYTHON_PATH=/opt/datax/datax/bin/datax.py
此文件中包括一些默认配置参数,例如:executor.port,json.path,data.path等,具体请查看文件。
5)启动服务
- 一键启动所有服务
./bin/start-all.sh
中途可能发生部分模块启动失败或者卡住,可以退出重复执行,如果需要改变某一模块服务端口号,则:
vi ./modules/{module_name}/bin/env.properties
找到SERVER_PORT配置项,改变它的值即可。
当然也可以单一地启动某一模块服务:
./bin/start.sh -m {module_name}
- 一键取消所有服务
./bin/stop-all.sh
当然也可以单一地停止某一模块服务:
./bin/stop.sh -m {module_name}
6)查看服务(注意!注意!)
在Linux环境下使用JPS命令,查看是否出现DataXAdminApplication和DataXExecutorApplication进程,如果存在这表示项目运行成功
如果项目启动失败,请检查启动日志:modules/datax-admin/bin/console.out或者modules/datax-executor/bin/console.out
Tips: 脚本使用的都是bash指令集,如若使用sh调用脚本,可能会有未知的错误
7)运行
部署完成后,在浏览器中输入 http://ip:port/index.html 就可以访问对应的主界面(ip为datax-admin部署所在服务器ip,port为为datax-admin 指定的运行端口)
输入用户名 admin 密码 123456 就可以直接访问系统
8) 运行日志
部署完成之后,在modules/对应的项目/data/applogs下(用户也可以自己指定日志,修改application.yml
中的logpath地址即可),用户可以根据此日志跟踪项目实际启动情况
如果执行器启动比admin快,执行器会连接失败,日志报"拒绝连接"的错误,一般是先启动admin,再启动executor,30秒之后会重连,如果成功请忽略这个异常。