【ETL】 Kettle數據抽取(轉換)出現亂碼問題解決方法數據庫
在數據庫鏈接這裏增長一個option配置項: characterEncoding gbk緩存
並檢查全部用到的相關數據庫表的字符集爲utf-8的session
設置以後不必定當時就生效,可能有緩存,記得清空緩存咯ide
就是這樣」If we do lazy conversion, we need to find out about the encoding「,直接勾選」容許延遲轉換「便可:blog
這樣在從數據庫讀取的數據就能保持原有字符集,不因默認強制使用utf8致使亂碼,在輸出時指定文件字符集,就會解決導出到文件中的亂碼問題。utf-8
若是導入到目標表的字符集與源表不一樣,須要在入庫前用select values作字符轉換(純屬廢話,相同就不會有亂碼了):it
整個流程以下io
這樣,不管到文件仍是目標表,都不會再有亂碼了。class
若是以上還沒法解決,能夠在Table Input 和Table Output的數據庫鏈接高級選項中設置當前session的字符集;如下除了能夠設置session 的字符集,還能夠設置日期格式等。亂碼
經過以上設置還沒法解決,只能歸結爲RP很差了O(∩_∩)O~