Kettle報OPTION SQL_SELECT_LIMIT=DEFAULT錯誤的解決辦法

近日使用kettle開發報表時,遇到錯誤:OPTION SQL_SELECT_LIMIT=DEFAULT

蒐羅了下網絡上解釋基本是一致的:
mysql通過jdbc鏈接的時候會進行測試’SET OPTION SQL_SELECT_LIMIT=DEFAULT’,但是5.6以後的版本棄用了set的方式

的確,我提數使用的源庫版本就是5.6,但是kettle中數據庫連接其實是通的,只是在獲取列的時候提示瞭如上報錯。暫且不管它,既然高版本的連接驅動解決了這個問題,那我們就去升級驅動好了,參照大家的說法,mysql-connector-java需要升級到5.1.22以上。

嘗試一(一般都能解決):
我依次下載了mysql-connector-java-5.1.23.jar、mysql-connector-java-5.1.25.jar、mysql-connector-java-5.1.36.jar置於data-integration\lib目錄並重啓kettle。竟然都沒解決!

不合理啊!難道驅動放置的目錄不對?又看到說windows 64系統驅動包要放到data-integration\libswt\win64目錄:

嘗試二:
依次將上面三個版本的驅動包放入data-integration\libswt\win64目錄並重啓kettle,依然失敗!

懷疑人生中…是不是大家的建議是基於老版本的開發工具的(我當前使用的工具是8.2的,最新)?OK,我去換下老版本的,於是下載了Kettle7.1。

嘗試三:
下載Kettle7.1之後,以上兩種方法都試了一遍,未果!

是不是老的驅動的影響?那麼kettle默認的JDBC連接驅動在哪呢?搜索了下安裝目錄,竟然沒有!那我放入data-integration\lib目錄應該起作用纔對啊!

難道?是不是我以前在JRE中內置了驅動包?致使我以上的嘗試都沒起作用?

嘗試四:
進入%JAVA_HOME%\jre\lib\ext目錄,果真發現了mysql連接驅動包:mysql-connector-java-5.1.14.jar!想必是我之前放進來的,替換成以上提到的任意驅動包,比如mysql-connector-java-5.1.25.jar,打開kettle,再次嘗試,問題解決!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章