此篇說明對應的kettle版本是6.1,實際使用時7.x應該也是同樣的。web
若是不加一下配置項,數據轉換後中文會出現亂碼,很難處理。數據庫
本地鏈接資源庫:配置項安全
defaultFetchSize 500測試
useCursorFetch truespa
characterEncoding UTF-8code
useUnicode true對象
一、每一個trans、jobs的名稱都應該和文件名一致。在使用資源庫的時候,不是按照文件名生成對象,而是按照名稱屬性生成。{因此若是有名稱屬性相同的就會衝突}blog
二、資源庫方式trans相對job的位置只能經過圖中下面的一種方式(相對位置)。而不能經過設置trans文件位置的方式(由於是資源庫,並非真的文件)。ip
一、從線上導出一個job(包含了數據庫的鏈接等信息),直接導出成整資源庫的文件。資源
二、把這個文件資源庫導入到03測試庫。
三、把這個數據庫鏈接信息dataCenters對應的ip改爲04上的開發庫(只改一個ip,其餘鏈接信息是一致的)。
四、在這個庫上進行相關開發操做。
五、開發完成須要上線,直接把前面的資源庫的ip地址換成線上ip地址便可。
六、把開發庫上其餘的東西都刪掉,只保留新開發的內容。
七、而後導出成整個文件的資源庫。把這個文件資源庫導入到線上。
爲了防止開發過程中忘了改ip地址,直接連到生產庫去,或者把生產庫上的鏈接地址沖掉了。這裏加上一個流程:
每次開發:從線上導資源庫到本地先導入到03的預發佈庫去。改完ip地址再導入到04的開發庫去。
每次上線的話:反過來。先導入到03庫,刪除沒必要要的東西,改完ip地址再導入到線上環境。
因爲kettle的特殊性。須要在任何改動後作驗證。
一、 每次修改、新增了kettle任務。必需要把job、trans都一步一步點開。查看是否能在job裏順利找到子trans。同時查看數據庫鏈接信息是否正確(有沒有被開發庫的設置沖掉)。
二、 給發新增的任務(job或者trans)在jenkins中增長對應的調度。(這裏建議調度名稱和調度要生成數據的表名一致)要有詳細的備註。
四、 每次修改、新增了kettle任務以後,都要在表結構同步好以後,jenkins中先構建一次任務,看看kettle任務是否可以執行成功。
五、 任務跑成功以後,要連到生產庫查看對應數據是否正確。
六、 啓動web後要點開相應功能查看web展現上是否正確。
若是是新部署的kettle
kettle的資源庫,須要用圖形界面打開,手動再設置一遍(要先刪除/root/.kettle/目錄下的配置文件,從新配置;而後會從新生成配置文件,這時才能正確連上資源庫)