linux 定时执行kettle6,linux下使用crond定时执行kettle的job
由于第一次碰linux,對其不是很了解,導致這個問題困擾了我近一個月的時間,現在終于解決了,分享給大家。
首先,安裝jre,配置java環境變量(一)下載jre-6u23-linux-x64.bin
下載地址:http://cds-esd.sun.com/ESD6/JSCDL/jdk/6u23-b05/jre-6u23-linux-x64.bin?AuthParam=1292401739_2abc6c61c57eec5b100fe647086d1f33&TicketId=CJ0nhpzNkjGGwpbkW40LAgA%3D&GroupName=CDS&FilePath=/ESD6/JSCDL/jdk/6u23-b05/jre-6u23-linux-x64.bin&File=jre-6u23-linux-x64.bin
(二)安裝jre-6u23-linux-x64.bin
將jre-6u23-linux-x64.bin上傳到linux服務器
1.在終端上,鍵入:su
2.輸入超級用戶口令。
3.切換到所需的安裝目錄。類型:cd 例如,要在/usr/java/目錄中安裝軟件,請鍵入:cd /usr/java/關于超級用戶訪問權限的說明:要將JRE安裝在系統級位置(例如/usr/local),必須以超級用戶身份登錄,從而獲得必要的權限。如果您不具有超級用戶訪問權限,請將JRE安裝在您的主目錄中,或者安裝在您具有寫入權限的子目錄中。
4.將您下載的文件的權限更改為可執行。類型:chmod a+x jre-6u23-linux-x64.bin
5.啟動安裝過程。鍵入:./ jre-6u23-linux-x64.bin此時將顯示二進制許可協議。通讀許可協議。按空格鍵顯示下一頁。讀完許可協議后,輸入yes繼續安裝(此步驟可能直接跳過)。
7.JRE安裝在其自身的目錄中。在本例中,它將安裝在/usr/java/ jre1.6.0_23目錄中。當安裝完成時,您將看到Done(完成)字樣。
(三)
配置java
環境變量
1.命令行鍵入“cd /etc”進入etc目錄
2.命令行鍵入“vi profile”打開profile文件
3.敲擊鍵盤ctrl+F到文件末尾
4.在末尾處,即第一個~的地方,敲擊鍵盤將以下內容輸入到文件
JAVA_HOME=/usr/java/jre1.6.0_23
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
5.鍵盤敲擊exc,命令行鍵入“:wq”,保存文件;
6.重新登錄linux,在命令行鍵入“java”,如果出現幫助信息則表示配置成功。
然后,部署kettle1.將pdi-ce-4.1.0-stable.zip上傳到linux服務器
2.使用unzip命令解壓pdi-ce-4.1.0-stable.zipunzip 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!
what the hell is going on ??!!
總結
以上是生活随笔為你收集整理的linux 定时执行kettle6,linux下使用crond定时执行kettle的job的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java tempfile read_J
- 下一篇: GMP与ISO9000有何区别?(转载)