安装hive出现的各种问题(这些问题出现在spark连接mysql的时候)
首先在啟動hive的時候,進入debug模式,
hive -hiveconf hive.root.logger=DEBUG,console才能出現下面的信息,終端上的信息會非常多,我們可以按下shift+pageup鍵,把信息拷貝到一個txt上,然后搜索error這個單詞所在位置,往往就是報錯信息,然后進行不斷地人機交互.
進入hive 執行show databases時報錯, 錯誤如下:
hive FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
利用/usr/local/Cellar/hive/2.3.1/libexec/bin目錄下的hive進入hive,再執行show databases查看日志:
./hive -hiveconf hive.root.logger=DEBUG,console show databases;- 1
- 2
(注:要執行./hiveserver2后再執行該命令)
報如下錯誤:
The specified datastore driver (“com.mysql.jdbc.Driver”) was not found in the CLASSPATH.
解決辦法:把mysql-connector-java-5.1.42.jar包放入libexec/lib目錄下。但解決完這個問題后仍然報錯,錯誤如下:
2017-12-05T11:52:50,446 WARN [ecd471e5-d4b9-40b4-bc9a-644fc411f415 main] metastore.MetaStoreDirectSql: Self-test query [select “DB_ID” from “DBS”] failed; direct SQL is disabled?
javax.jdo.JDODataStoreException: Error executing SQL query “select “DB_ID” from “DBS”“.?
at org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:543) ~[datanucleus-api-jdo-4.2.4.jar:?]?
……?
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘hive.dbs’ doesn’t exist?
……?
2017-12-05T11:52:50,457 ERROR [ecd471e5-d4b9-40b4-bc9a-644fc411f415 main] metastore.RetryingHMSHandler: MetaException(message:Version information not found in metastore. )
原因:沒生成源數據表,打開hive-site.xml,設置如下為true
<property><name>datanucleus.schema.autoCreateAll</name><value>true</value></property>再執行命令(這個schematool的命令是hive源碼包的文件夾種的下面的的bin下面的一個文件,使用下面命令時會出來一大堆的空白,沒關系,是正常,一定要耐心等待啊):
schematool -dbType mysql -initSchema總結
以上是生活随笔為你收集整理的安装hive出现的各种问题(这些问题出现在spark连接mysql的时候)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pyspark读取json文件中的内容
- 下一篇: WARN HiveConf: HiveC