目錄
一、啟動hive時發現log4j版本和hadoop的版本有沖突
解決辦法:刪除hive下高版本的slf4j
二、啟動hive報錯?Exception in thread "main" java.lang.NoSuchMethodError:com.google.common.base.Preconditions.checkArgument(ZLjava/lang/Object;)V?
解決辦法
1. 刪除hive的lib目錄下低版本的guava-19.0.jar
2. 將hadoop目錄下的guava-27.0-jre.jar復制到hive的lib目錄下
3. 成功啟動
三、在hive創建數據庫時報錯FAILED: HiveException java.lang.RuntimeException:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
解決辦法
1. 修改hive-site.xml配置文件
2. 再次初始化hive之后問題解決
一、啟動hive時發現log4j版本和hadoop的版本有沖突
解決辦法:刪除hive下高版本的slf4j
???????sudo rm -rf log4j-slf4j-impl-2.10.0.jar //進入hive安裝目錄里的bin查看,安裝包不一樣這里是不同的
二、啟動hive報錯?Exception in thread "main" java.
lang.NoSuchMethodError:com.google.common.base.Preconditions.checkArgument(ZLjava/lang/Object;)V?
解決辦法
1. 刪除hive的lib目錄下低版本的guava-19.0.jar
sudo rm -rf guava-19.0.jar
2. 將hadoop目錄下的guava-27.0-jre.jar復制到hive的lib目錄下
sudo cp /home/2130502441ryx/hadoop-3.1.3/share/hadoop/common/lib/guava-27.0-jre.jar /home/2130502441ryx/apache-hive-3.1.0-bin/lib
3. 成功啟動
???????hive
三、在hive創建數據庫時報錯FAILED: HiveException java.lang.RuntimeException:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
這是因為在spark-shell里面操作了hive的數據
(spark應用創建表時,指定的schema版本為1.2.0,而hive的schema版本為2.3.x,版本不兼容導致)
解決辦法
1. 修改hive-site.xml配置文件
vi /usr/hive/conf/hive-site.xml
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>