目录
一、启动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>