當前位置:首頁 » 操作系統 » kettleforlinux

kettleforlinux

發布時間: 2023-07-22 07:16:06

linux上使用crond定時執行kettle的job怎麼解決

linux上使用crond定時執行kettle的job的解決方法:


一、部署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執行許可權。

exportjava_HOME=/usr/java/jre1.6.0_23
exportPATH=$JAVA_HOME/bin:$PATH
exportCLASSPATH=.:$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」,對文件進行編輯。
輸入如下內容: 23111002*/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!

② linux下怎樣安裝使用kettle

安裝JDK環境:根據自己的linux系統選擇相應的版本,比如我的centos7是x64的,所以我選擇jdk-8u74-linux-x64.tar.gz下載
下載下來以後,我們將其移到我們創建的一個目錄中,存放tar包的目錄為/usr/local/src/jdk,然後解壓:
tar -zxf /usr/local/src/jdk/jdk-7u65-linux-x64.tar.gz
編輯 vi /etc/profile 文件
在文件後面添加:
export JAVA_HOME=/usr/local/src/jdk/jdk1.8.0_74
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$CLASSPATH:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
執行 . /etc/profile
配置成功後,關閉終端,重新進入,輸入java –version 如果出現版本號什麼的,就證明jdk安裝成功
1. 將data-integration文件夾直接拷貝到/usr/local/kettle文件夾下面
cd /usr/local/kettle/data-integration 進入該目錄
為所有.sh文件賦予執行許可權
chmod +x *.sh
然後在終端鍵入./kitchen.sh 如果出現幫助信息,說明kettle安裝成功
./kitchen.sh -----運行job
./span.sh -----運行轉換
1. 在kettle下建立data 文件夾,用來存放轉換和job文件
建立ktllog 文件夾,用來存放日誌文件
建立ktlsh 文件夾,用來存放腳本文件
1. 在ktlsh文件夾中新建執行job的文件,
新建文件命令: touch xxx.sh
並賦予文件執行權游脊限
chmod +x xxx.sh

編輯xxx.sh文件
Vi xxx.sh
輸入 :
#!/bin/sh
source /etc/profile 配置環境變數(使用crontab時候,由於crontab不識別系統的環境變數,所以需要我們這邊再配置一遍)

ROOT_TOPDIR=/usr/local/kettle
Export ROOT_TOPDIR --設置kettle目錄
$ROOT_TOPDIR/data-integration/kitchen.sh –file=需要執行的job的文件(絕對路徑)

保存!
可在ktlsh目錄下直接執行./塌態xxx.sh 文件運行
1. 配置crontab 定期執行作業或者轉換
基本格式 :
*****command
分時日月周命令
第1列表示分鍾1~59 每分鍾用*或者 */1表示 第2列表示小時1~23(0表示0點) 第3列表示日期1~31 第4列表示月份1~12 第5列標識號星期0~6(0表示星期天) 第6列要運行的命令
在crontab中配置自動每天12點30分執行xxx.sh文件
編輯crontab : crontab –e
增加一行
30 12 * * * /usr/loca/kettle/ktlsh/xxx.sh

如果要輸出日誌可
30 12 * * * /usr/loca/kettle/ktlsh/xxx.sh >> /usr/local/kettle/ktllog/log01
如果ktllog下面不存在log01文件會自動創建
配置完後神衫滲重啟crontab服務:
Service crond restart
查看crontab服務
Service crond status
查看crontab中的內容
Crontab –1

熱點內容
cs狙擊腳本 發布:2025-03-15 15:25:15 瀏覽:342
平板搭建ftp伺服器 發布:2025-03-15 15:24:32 瀏覽:831
中樞源碼指標 發布:2025-03-15 15:17:15 瀏覽:117
手柄壓縮 發布:2025-03-15 15:15:41 瀏覽:995
威綸通觸摸屏編程軟體 發布:2025-03-15 15:10:22 瀏覽:501
光遇安卓聖島季是什麼 發布:2025-03-15 15:10:06 瀏覽:714
socket緩存大小 發布:2025-03-15 15:10:05 瀏覽:967
創建資料庫db2 發布:2025-03-15 15:07:52 瀏覽:55
python和java哪個好 發布:2025-03-15 15:07:36 瀏覽:135
返回鍵編程 發布:2025-03-15 15:07:01 瀏覽:592