WSL安装datax-web

本文详细介绍了在WindowsSubsystemforLinux(WSL)环境下安装和配置DataX-web、Python2、Java及MySQL,包括设置WSL、更换apt源、网络互访和防火墙配置。

WSL安装datax-web

文件准备:datax, datax-web, jdk

安装WSL

  1. 启用windows功能
    打开”启用或关闭 Windows 功能"
    勾选"Hyper-V"、“适用于 Linux 的 Windows 子系统”、“虚拟机平台”
    确认后会重启,重启后执行后续步骤

  2. 设置 WSL为默认值

wsl --set-default-version 2
  1. 安装子系统(Ubuntu)
    打开"Microsoft Store"(微软系统自带的应用商店)
    搜索"wsl"安装Ubuntu,安装后打开
    注意:可能会出现的情况,打开后无法搜索,使用Win+R,输入"wsreset"重置应用商店打开后重新搜索

  2. 输入用户名/密码
    注意:可能会出现的情况,会让你一致输入用户名/用户组(出现该情况直接Ctrl+C)重新输入"wsl"可进入子系统

将提前下载的文件存放到/opt目录(目录可选)

  1. 打开Windows 资源管理器(文件夹)
    左侧导航栏"Linux",找到路径将提取准备的文件放入

更换apt源

  1. 备份源
cp /etc/apt/sources.list /etc/apt/sources.list.back
  1. 编辑源
    (方法1)
vim /etc/apt/sources.list

将内容替换为下文,替换后保存

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

(方法2)
2.1. 打开Windows 资源管理器(文件夹)
左侧导航栏"Linux",找到路径的文件打开进行替换
3. 执行以下命令

apt-get update
apt-get upgrade

安装python2

  1. 使用apt安装python2
apt install python2
  1. 将python2设置为默认python
update-alternatives --install /usr/bin/python python /usr/bin/python2 1
  1. 验证是否设置成功
python -V

回响:“Python 2.7.18”

安装Java

由于依赖包的问题,这里选择手动安装,配置Java环境

  1. 进入/opt目录(安装目录可选)
  2. 解压"jdk-*.tar.gz"包
tar -xvf jdk-8u211-linux-x64.tar.gz
  1. 重命名解压后的文件夹
mv jdk1.8.0_211/ java
  1. 配置java环境变量
    打开环境变量文件
vim /etc/profile

末尾添加如下内容,添加后保存并退出

# 注意目录根据自己所安装的JDK路径而定
export JAVA_HOME=/opt/java
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

刷新环境变量文件

source /etc/profile

测试是否配置成功

java -version
javac

解压datax

tar -xvf datax.tar.gz

解压后进入datax的bin目录

cd datax/bin

运行datax自带Job文件

python datax.py ../job/job.json

安装Mysql数据库

  1. 卸载"libevent-core-2.1-7"包,该包会在安装mysql时引发冲突
apt-get remove libevent-core-2.1-7
  1. 安装mysql数据库
    安装前建议先查询是否有
apt search mysql-server

执行安装

apt install mysql-server
  1. 查看mysql服务
service mysql status

回响: " * MySQL is stopped."
4. 启动mysql服务

service mysql start

修改mysql用户密码

  1. 进入mysql
mysql -u root -p

提示输入密码,直接回车进入
2. 进入mysql表

use mysql;
  1. 修改root密码
alter user 'root'@'localhost' identified with mysql_native_password bt 'root';
  1. 刷新
FLUSH PRIVILEGES;
  1. 退出后重新进入
quit;
  1. 创建dataxweb数据库
CREATE DATABASE dataxweb;

查看是否创建

SHOW DATABASES;

退出mysql

安装datax-web

  1. 进入"datax-web*.tar.gz"的存放目录
cd /opt
  1. 解压datax-web压缩包
tar -xvf datax-web-2.1.2.tar.gz
  1. 重命名解压后的文件夹
mv datax-web-2.1.2 datax-web
  1. 进入data-web的bin目录
cd datax-web/bin/
  1. 运行安装脚本
 ./install.sh

以下是安装过程的说明,视情况选择

# (1)是否要解压缩此包:[datax-admin_2.1.2_1.tar.gz]?(是/否)
Do you want to decompress this package: [datax-admin_2.1.2_1.tar.gz]? (Y/N)

# (2)是否要解压缩此程序包:[datax-execution_2.1.2_1.tar.gz]?(是/否)
Do you want to decompress this package: [datax-executor_2.1.2_1.tar.gz]? (Y/N)

# (3)您想确认并安装[datax admin]吗?(是/否)
Do you want to confiugre and install [datax-admin]? (Y/N)

# (4)是否要使用sql:[/opt/datax-web/bin/db/datax_web.sql]初始化数据库?(是/否)
Do you want to initalize database with sql: [/opt/datax-web/bin/db/datax_web.sql]? (Y/N)

# (5)请输入数据库主机(默认值:127.0.0.1):
Please input the db host(default: 127.0.0.1):

# (6)请输入数据库端口(默认值:3306):
Please input the db port(default: 3306):

# (7)请输入数据库用户名(默认值:root):
Please input the db username(default: root):

# (8)请输入数据库密码(默认值:):
Please input the db password(default: ):

# (9)请输入数据库名称(默认值:dataxweb)
Please input the db name(default: dataxweb)

# (10)确认密码
Enter password:

# (11)是否要确认并安装[datax executor]?(是/否)
Do you want to confiugre and install [datax-executor]? (Y/N)
  1. 指定datax-web的java位置
vim /opt/datax-web/modules/datax-admin/bin/env.properties

# JAVA_HOME=""修改为JAVA_HOME=/opt/java

  1. 指定datax-web的datax位置
vim /opt/datax-web/modules/datax-executor/bin/env.properties

# JAVA_HOME=""修改为JAVA_HOME=/opt/java
PYTHON_PATH=修改为PYTHON_PATH=/opt/datax/bin/datax.py

启动data-web服务
./start-all.sh
关闭datax-web服务
./stop-all.sh

至此wsl部署datax-web已结束

补充

导出wsl

wsl --export Ubuntu-22.04 D:\Install\SubSystem\Ubuntu\Ubuntu-22.04.tar

安装已导出的 wsl2 子系统

  1. 导入wsl
wsl --import Ubuntu-22.04 D:\Install\SubSystem\Ubuntu D:\Install\SubSystem\Ubuntu\Ubuntu-22.04.tar --version 2
  1. 进入wsl
wsl

wsl与windows网络互访

  1. 查看windews的IP地址
cat /etc/resolv.conf
  1. 查看wsl的IP地址
ip a |grep "global eth0"

举例:“inet 172.27.170.146/20 brd 172.27.175.255 scope global eth0”
"172.27.170.146"就是wsl的IP地址

  1. 允许windows防火墙对wsl放行(管理员权限打开powershell)
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

命令成功执行后,我们会在Windows的防火墙高级设置的入站规则里会看到一条名为WSL的新规则

主机转发wsl端口

用于局域网内其他电脑可以访问wsl

  1. 配置防火墙本机端口入站规则(管理员权限打开powershell)
New-NetFirewallRule -DisplayName "datax-web for WSL" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 9527 -Profile Any

命令成功执行后,我们会在Windows的防火墙高级设置的入站规则里会看到一条名为datax-web for WSL的新规则

  1. 配置端口转发
netsh interface portproxy add v4tov4 \
listenport=9527 listenaddress=0.0.0.0 \
connectport=9527 connectaddress=localhost
  1. 查看监听端口是否配置成功
netsh interface portproxy show all

删除端口转发

netsh interface portproxy delete v4tov4 listenport=9527 listenaddress=0.0.0.0
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值