启动环境
需要提前准备的(只提供作者试过且可行的方案)
- window11
- ubuntu20(wsl2) window11内置ubuntu的方式自行百度,此处不做陈述
- jdk8
- mysql8
- navicat
- vscode
环境准备不做过多陈述,以下是正式的安装启动步骤
SeaTunnel 2.3.3
资源准备
- 第一步: 创建文件夹 (话不多说,直接上图,按照红框所示创建即可)
2.第二步: 下载二进制包,放到backend文件夹下
链接: apache-seatunnel-2.3.3-bin.tar.gz
SeaTunnel 服务端安装
备份 install-plugin.sh
install-plugin.sh 复制一份,更名为install-plugin.sh.bak
更改${SEATUNNEL_HOME}/mvnw 为mvn

项目根目录执行 sh bin/ install-plugin.sh 安装依赖

移动connectors/seatunnel下的所有jar到 lib目录

下载datasource
这里稍微带一下源码的东西,在源码里有下载datasource的脚本复制到bin下,如下图所示
我把脚本内容写在下面,可以自己创建
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#This script is used to download the connector plug-ins required during the running process.
#All are downloaded by default. You can also choose what you need.
#You only need to configure the plug-in name in config/plugin_config.
# get seatunnel web home
SEATUNNEL_WEB_HOME=$(cd $(dirname $0);cd ../;pwd)
DATASOURCE_DIR=${SEATUNNEL_WEB_HOME}/datasource
# If you don't want to download a certain data source, you can delete the element below
datasource_list=(
"datasource-plugins-api"
"datasource-elasticsearch"
"datasource-hive"
"datasource-jdbc-clickhouse"
"datasource-jdbc-hive"
"datasource-jdbc-mysql"
"datasource-jdbc-oracle"
"datasource-jdbc-postgresql"
"datasource-jdbc-redshift"
"datasource-jdbc-sqlserver"
"datasource-jdbc-starrocks"
"datasource-jdbc-tidb"
"datasource-kafka"
"datasource-mysql-cdc"
"datasource-s3"
"datasource-sqlserver-cdc"
"datasource-starrocks"
"datasource-mongodb"
)
# the datasource default version is 1.0.0, you can also choose a custom version. eg: 1.1.2: sh install-datasource.sh 2.1.2
version=1.0.0
if [ -n "$1" ]; then
version="$1"
fi
echo "Downloading SeaTunnel Web Datasource lib, usage version is ${version}"
# create the datasource directory
if [ ! -d "$DATASOURCE_DIR" ];
then
mkdir -p "$DATASOURCE_DIR"
echo "Created datasource directory."
fi
for i in "${datasource_list[@]}"
do
echo "$i"
echo "Downloading datasource: " "$i"
"$SEATUNNEL_WEB_HOME"/mvnw dependency:get -DgroupId=org.apache.seatunnel -DartifactId="$i" -Dversion="$version" -Ddest="$DATASOURCE_DIR"
done
替换脚本的下载路劲,下载到之前创建的datasource目录中去
具体路径自定,只要能找到就行,然后同理,执行这个脚本
将下载的jar包复制到lib中去


然后最后我们来一个简单的全量同步
创建一个任务文件
如图
连通性自检哈
执行任务文件
./bin/seatunnel.sh --config config/txz/mysql_demo_1.config.template -e local
最后观察数据库同步情况即可