您的位置:首页 > 运维架构 > Linux

linux下使用crond定时执行kettle的job任务

2016-10-26 15:21 513 查看
部署kettle

       
1.         将pdi-ce-4.1.0-stable.zip上传到linux服务器

2.         使用unzip命令解压pdi-ce-4.1.0-stable.zip
unzip pdi-ce-4.1.0-stable.zip -d "/mnt/kettle"

3.         赋予解压目录下.sh文件的执行权力

chmod +x *.sh

4.         进入解压目录,键入“./kitchen.sh”回车,如果有帮助信息则表示kettle环境部署成功

※(重点)接着,编写执行kettle任务的shell脚本

创建test.sh,将以下内容复制粘贴到里面,然后键入“chmod +x /mnt/kettle/*.sh”,赋予test.sh执行权限。


export JAVA_HOME=/usr/java/jre1.6.0_23


export PATH=$JAVA_HOME/bin:$PATH


export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar


/mnt/kettle/data-integration/kitchen.sh -file=/mnt/kettle/test.kjb > /mnt/kettle/display.txt


说明:
前3行,设置java环境变量的语句必不可少,

因为crond是个守护进程,它不归属于任何用户,虽然之前以root身份配置了java的环境变量,但是crond一样找不到java命令,

所以,当crond执行kettle任务时,需要动态设置java环境变量,crond才能找到java命令。

最后,使用crontab命令添加定时任务

       1.在终端上,键入“crontab -e”,进入定时任务文件

       2.键入“a”,对文件进行编辑

          输入如下内容: 


23 11 10 02 * /mnt/kettle/test.sh
        其中
23为分钟,11为小时,10为日,02为月,*为星期几,crontab命令的使用这里不再赘述。
       3.键盘敲击exc,终端键入“:wq”,保存文件
       4.重启crond服务
          键入“cd
/etc/init.d”,进入该目录
          键入“./crond
restart”,重启crond服务
      5.等待执行结果
      6.执行成功,oh..nice!

转载地址:http://blog.sina.com.cn/s/blog_543e73a80102v11s.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: