最開始用於解決MySQL轉移數據到ORACLE的問題,嘗試了幾種方法。
1.直接從Mysql導出csv文件。這種方式最直接簡單,但是問題是數據大的話,容易出現數據對不齊的情況,導入這個時候就會出現錯誤。
2.直接導出其余方式的文件,有的根本無法操作,導出sql文件,但是腳本不一樣,也無法解決問題。
然后就用到,Kettle是Pentaho的一個組件,主要用於數據庫間的數據遷移(ETL)。
Kettle有三個主要組件:Spoon,Kitchen,Pan。其中Spoon是一個圖形化的界面。
一、安裝kettle
1、kettle是國外一款開元ETL工具,純Java編寫,所以需要在Java環境下運行。
jdk下載地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
下載安裝jdk,配置Java環境:
java_home:C:\Program Files\Java\jdk1.7.0_25(安裝jdk路徑)
classpath:.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar
path:在path路徑中添加%java_home%\bin;%java_home%\jre\bin;
kettle_home:D:\Program Files\data-integration(安裝kettle路徑)
配置好Java環境后測試:運行cmd,輸入java -version命令,顯示Java信息,證明OK。
2、官網下載 http://community.pentaho.com/projects/data-integration/
Data Integration (or Kettle) 7.1版本下載:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.1/pdi-ce-7.1.0.0-12.zip/download
有的官網無法查找到下載地址,附上直接下載地址:https://sourceforge.net/projects/pentaho/?source=typ_redirect
目前最新版本為6.0,下載完后,解壓即可,雙擊Spoon.bat就可以啟動了。
二、異常問題解決
1、Java環境沒配置好會出現問題
2、可能是Java版本太低了,jdk1.6以上版本才行,具體的可以查看spoon.bat配置文件。
3、Java環境配置對了,但是啟動不了spoon.bat,也就是雙擊spoon.bat后一閃就沒了的問題(這也是我遇到的問題)
在網上查了很多資料,也試了很多的方法,都沒能解決問題。因為開始安裝的kettle是公司的同事給的一個版本在Java環境對的情況下,安裝之后發現啟動不了,網上找了n多辦法也沒用。最后干脆到官網下載了一個最新版的kettle安裝好后,啟動spoon.bat。然並卵,還是報錯了。error:could not create the java virtual machine;這錯誤並不是說java虛擬機出了問題,只要修改一下spoon.bat里內存配置:
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms2058m" "-Xmx1024m" "-XX:MaxPermSize=256m"
改為
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms512m" "-Xmx512m" "-XX:MaxPermSize=256m"
Kettle配置好了,附上學習路徑:http://www.ukettle.org/thread-66-1-1.html
