背景:官網後臺(MySQL)需要從CRM系統(Oracle)抽一張表,然後我使用ETL工具kettle來抽取數據。
問題:200W左右的數據抽到150W左右的時候突然拋出了一個錯誤,你說氣不氣:
【------2019-12-11更新一下問題:
最近幾天項目需要,導數中又遇到這個問題,解決辦法看另一篇 👇
https://mp.csdn.net/postedit/102729725
】
經查詢,這個問題應該是這個字段中的數據編碼不統一導致的,但是我按着別的方法都試了也沒解決問題,刪除數據的時候把官網都搞卡了。最後把wyn_address這個字段刪掉就成功了。(這個字段裏面的數據比較亂:文字數字各種不規範)
最後的最後,從Oracle中把包含報錯字段wyn_address的所有數據拷到本地,結果一次成功,
本地測試結果:
查詢數據庫編碼發現,確實不一致:
官網數據庫編碼:character_set_server = latin1
本地數據庫編碼:character_set_server = utf8
記錄:官網默認數據庫編碼 一直都是latin1,生產庫也不敢動!如果可以修改,改成utf8或utf8mb4,應該就成功了。(以自己實際測試結果爲準)
--本地測試:
把本地MySQL庫的server編碼改成latin1,kettle轉換也順利通過,懵逼臉。。。
進死衚衕了,先不糾結了,反正address字段也不重要,可以去掉此字段,問題先解決了再說!!!
問題先記錄一下,後續研究研究!!!
-------2019-12-11
最近幾天項目需要,導數中又遇到這個問題,解決辦法看另一篇 👇
https://mp.csdn.net/postedit/102729725