欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

关于linux安装kettle的总结

程序员文章站 2022-09-15 19:23:29
一.部署准备 1.1 JDK安装配置 命令行键入“cd /etc”进入etc目录 命令行键入“vi profile”打开profile文件 敲击键盘ctrl+F到文件末尾 在末尾处,即第一个~的地方,敲击键盘将以下内容输入到文件 export JAVA_HOME=/usr/java/jre1.8.0 ......

  一.部署准备

  1.1 jdk安装配置

  命令行键入“cd /etc”进入etc目录

  命令行键入“vi profile”打开profile文件

  敲击键盘ctrl+f到文件末尾

  在末尾处,即第一个~的地方,敲击键盘将以下内容输入到文件

  export java_home=/usr/java/jre1.8.0_45

  export path=javahome/bin:java_home/bin:javah​ome/bin:path

  export classpath=.:javahome/lib/dt.jar:java_home/lib/dt.jar:javah​ome/lib/dt.jar:java_home/lib/tools.jar

  键盘敲击exc,命令行键入“:wq”,保存文件;

  jdk配置成功:

  1. 命令:java -version.出现版本信息

  2. 命令:echo ${java_home}出现配置路径

  二.kettle部署

  1:创建一个目,将下载好的kettle解压后放在该文件夹下。

  mkdir /root/software/kettle

  cp /root/pdi-ce-5.0.1-stable.zip /root/software/kettle

  cd /root/software/kettle

  unzip pdi-ce-5.0.1-stable.zip

  cd data-integration

  ll *.sh

  chmod +x *.sh //以.sh结尾的文件必须拥有执行权限,如果没有,请赋予

  2:测试安装是否成功

  在kettle的data-integration目录中执行kitchen.sh文件,若出现帮助信息,证明安装成功

  /kitchen.sh

  备注:

  kitchen.sh:执行job

  pan.sh:执行转换

  三:运用crontab执行kettle程序

  1.建立目录存放kettle文件

  mkdir -p /root/kettle/kettle_file/job // 存放作业文件

  mkdir /root/kettle/kettle_file/transition // 存放转换

  mkdir /root/kettle/kettle_sh // 存放执行脚本

  mkdir /root/kettle/kettle_log // 存放执行kettle产生的日志文件

  将从windows上配置好的.ktr和.kjb程序分别放在transition目录和job目录下(或linux下编写后直接保存到该目录下)

  2:编写执行脚本

  cd /root/kettle/kettle_sh

  vim ceshi.sh

  文本内容如下:

  #!/bin/bash无锡哪家医院妇科好 http://www.bhnfk.com/

  #执行job程序

  cd /root/software/kettle/data-integration

  export java_home=/usr/java/jdk1.6.0_45

  export path=javahome/bin:java_home/bin:javah​ome/bin:path

  export classpath=.:javahome/lib/dt.jar:java_home/lib/dt.jar:javah​ome/lib/dt.jar:java_home/lib/tools.jar

  注:(因为crond是个守护进程,它不归属于任何用户,虽然之前以root用户配置了java环境变量,但是crond一样找不到java命令,所以,当crond执行kettle任务时,需要动态设置java环境变量,否则会出现手动执行.sh没问题,放crontb里面执行后无效果)

  ./kitchen.sh -file=/root/kettle/kettle_file/job/ceshi.kjb-level=basic >>/root/kettle/kettle_log/ceshi_$(date +%y%m%d).log

  chmod +x ceshi.sh

  sh -x ceshi.sh

  3:设定crontab 定时执行任务

  crontab -u root -e

  */1 * * * * /root/kettle/kettle_sh/ceshi.sh //每分钟执行一次ceshi.sh

  *~~