【分布式数据仓库Hive】常见问题及解决办法

目录

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

2. 再次初始化hive之后问题解决

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值