irpas技术客

Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreCli

irpas 2907

本文章向大家介绍Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient报错,问题排查,主要包括Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient报错,问题排查使用实例、应用技巧、基本知识点总结和需要注意事项。

?

问题出现的原因:

最近在整合spark与hive,新安装spark-2.3.3以客户端的方式访问hive数据,运行方式使用spark on yarn,但是在配置spark读取hive数据的时候,这里直接把hive下的hive-site.xml复制到spark目录下,启动了一次spark,上面的问题就出现了。

?

问题排查:

1、进入hive命令行时,会报错:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

2、首先查看服务器上/tmp/${user}/hive.log文件,hive执行日志。

3、发现日志中的报错信息:

Caused by: MetaException(message:Hive Schema version 2.1.0 does not match metastore's schema version 1.2.0 Metastore is not upgraded or corrupt)

这里的意思是,hive的版本是2.1.0,但是元数据中的版本信息是1.2.0,因此报错。

到hive的元数据库里查了下version表里的数据,确实版本是1.2.0

解决方法:

一、修改元数据

?

mysql> select * from VERSION; +--------+----------------+--------------------------------------+ | VER_ID | SCHEMA_VERSION | VERSION_COMMENT ? ? ? ? ? ? ? ? ? ? ?| +--------+----------------+--------------------------------------+ | ? ? ?1 | 2.1.0 ? ? ? ? ?| Set by MetaStore wjy@192.168.138.102 | +--------+----------------+--------------------------------------+ 1 row in set (0.00 sec)

修改源数据版本

update VERSION set SCHEMA_VERSION='2.1.0' where ?VER_ID=1;

?

二、修改hive-site.xml文件配置

<property> ? ? <name>hive.metastore.schema.verification</name> ? ? <value>false</value> </property>

?

到此,应该是完美解决了。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #Unable #To #instantiate #本文章向大家介绍Unable