CentOS(Linux)安装KETTLE教程 并配置执行定时任务

1,首先是安装jdk,并设置环境变量

采用yum安装可不设置环境变量

2,下载kettle

https://sourceforge.net/projects/pentaho/files/Data%20Integration/

请选择我们当前工作的版本7.0

可以使用如下命名直接下载

wget -c --output-document=pdi-ce-7.0.0.0-25.zip https://nchc.dl.sourceforge.net/project/pentaho/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.zip

3,使用unzip命令对这个压缩包进行解压

unzip pdi-ce-7.0.0.0-25.zip -d "/opt/kettle"

4,解压后给予相应文件可执行权限

进入到/opt/kettle/data-integration

授予 *.sh +x权限 即可执行权限

5,执行转换

编写测试转换,执行如下命令即可

/opt/kettle-spoon/data-integration/pan.sh -file=/opt/kettle-spoon/ktr/test/test1.ktr log=test1.log

6,执行job

sudo /opt/kettle-spoon/data-integration/kitchen.sh -file=/opt/kettle-spoon/ktr/test/SechuldUpdate.kjb log=timeLogUpdate.log

(如果是job需要定时,如果我们需要执行的是一个job,则可跳过下列步骤,直接在job里设置定时参数即可 )

job和ktr的路径变量问题需要注意,也可以直接写绝对路径

7,配置定时任务

7.1,如果是转换文件需要定时

可以按照如下方法操作,创建一个文件 test.sh

在这个文件里写入如下语句

1export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64 2export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATH 3export PATH=$JAVA_HOME/bin:$PATH 4/opt/kettle-spoon/data-integration/pan.sh -file=/opt/kettle-spoon/ktr/test/Sechuld.kjb log=log.timelog ~data +%y%m%d~

然后给这个文件可执行权限 +x

然后运行 crontab –e 编辑定时任务

*/10 * * * * bash /home/etl/ schedule.sh表示每隔10分钟执行一次schedule.sh

然后保存,运行crontab–l查看定时任务是否已载入

运行systemctl restart crond重启定时任务,运行systemctl status crond查看crontab服务状态

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )