datax
datax介绍
DataX 是阿里云的离线数据同步工具,它通过 JDBC 连接 MySQL 数据库,发送 SQL 语句获取数据缓存在本地 JVM中,然后通过 Writer 线程将数据写入到表格存储的数据表中。
部署datax
1、下载datax
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
2、安装python 3
apt install python3
3、安装jdk11,mysql(需要安装mysql5.7,mysql8需要配置兼容)
apt install openjdk-11-jre-headless openjdk-11-jdk-headless mysql-server
4、配置jdk环境变量
[root@ksbl-sit ~]# vim .bashrc export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 export PATH=$JAVA_HOME/bin:$PATH [root@ksbl-sit ~]# source .bashrc
6、安装datax可视化界面
安装datax-web(datax的可视化服务),需要输入数据库的ip(默认127.0.0.1,这个IP必须匹配/etc/mysql/mysql.conf.d/mysqld.cnf中的bind IP,否则没法查数据库)、mysql的用户名和密码。之后会自动创建一个dataxweb数据库,里面包含datax-web的用户名和密码
#下载datax-web界面 https://pan.baidu.com/s/13yoqhGpD00I82K4lOYtQhg cpsk #安装 [root@ksbl-sit datax-web-2.1.2]# ./bin/install.sh --force #数据库配置文件 [root@ksbl-sit datax-web-2.1.2]# cat modules/datax-admin/conf/bootstrap.properties #Database DB_HOST=127.0.0.1 DB_PORT=3306 DB_USERNAME=root DB_PASSWORD= DB_DATABASE=dataxweb #手动导入数据库 [root@ksbl-sit ~]# find ./datax-web-2.1.2 -name "datax_web.sql" ./datax-web-2.1.2/bin/db/datax_web.sql mysql -u root dataxweb < datax_web.sql
7、配置datax位置
[root@ksbl-sit bin]# vim /root/datax-web-2.1.2/modules/datax-executor/bin/env.properties ........ ### 执行datax的python脚本地址 PYTHON_PATH=datax/bin/datax.py ........
8、启动服务
[root@ksbl-sit datax-web-2.1.2]# pwd /root/datax-web-2.1.2 [root@ksbl-sit datax-web-2.1.2]# ./bin/start-all.sh ......... 2024-12-02 13:43:44.950 [INFO] (3124) DATAX-EXEXUTOR start success
9、运行jps查看状态,如果出现DataXAdminApplication和DataXExecutorApplication进程,这表示项目运行成功
[root@ksbl-sit datax-web-2.1.2]# jps 3072 DataXAdminApplication 3491 Jps 1240 ServerMain 3354 DataXExecutorApplication
10、访问
http://192.1.6.1:9527/index.html
账号:admin
密码:123456
如果开了防火墙,需要开放9527端口
ufw allow 9542
连接报错处理思路
如果出现账号密码错误,可查看日志
[root@ksbl-sit bin]# pwd /root/datax-web-2.1.2/modules/datax-admin/bin [root@ksbl-sit bin]# tail -f console.out
数据库相关错误
-- 查看所有用户信息 select user,host from mysql.user; -- 创建用户并设置密码 CREATE USER 'root'@'%' IDENTIFIED BY 'chang0123'; -- 授予所有权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; -- 刷新权限 FLUSH PRIVILEGES; -- 将用户的身份验证插件修改为 mysql_native_password ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'chang0123';
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 【全网最全教程】使用最强DeepSeekR1+联网的火山引擎,没有生成长度限制,DeepSeek本体