這是我在CSDN上寫的第一篇部落格文章
作為一個小白,最近跟在安裝和設定Hive的時候出現了問題。
我是跟著這篇部落格進行安裝設定的
具體部落格地址:dblab.xmu.edu.cn/blog/1080-2/
Ubuntu14.04
Hadoop 2.7.1
Hive 1.22
JDK12
1.SessionHiveMetaStoreClient
2.IovacationTargetException
3.JDOFatalInternalException
當時我首先去百度了第一個錯誤SessionHiveMetaStoreClient,結果說是沒有執行Hive的初始化的原因。
於是執行命令:schematool -dbType mysql -initSchema
出現如下錯誤:
原因是需要關閉mysql服務才能執行該命令。
於是關閉mysql服務,並重新執行該命令,結果出現了另一個錯誤:
Failed to get schema version,這個錯誤的型別有很多,通常是hive-site.xml的設定出現了問題,請仔細檢查。但如果是設定問題的話,錯誤後面往往有具體說明,而我的後面什麼也沒有,當然檢查完組態檔沒有任何問題。
於是我嘗試了各種方法,都沒能解決Failed to get schema version這個錯誤。
沒辦法,我只好換一個思路,從另一個報錯資訊找思路
這個錯誤通俗來說,就是型別對映出現了問題
問題就出在這裡了,相信各位眼尖的話,也能看出問題所在
注意:
如果執行Hive的初始化schematool -dbType mysql -initSchema,仍然會有Failed to get schema version這個錯誤。不需要執行這個初始化,似乎在Hive2.x才需要執行初始化。
重新啟動mysql服務,並執行hive命令就可以成功啟動hive了。
所以JDK版本還是1.8最好使,至於我為什麼安裝了JDK1.8還要使用JDK12,那是因為最近在下載最新版Eclipse時,需要新版JDK才能啟動…
好了,此貼就到這裡了,希望對被相同問題困擾的人有所幫助!