遇到的问题

Hive在运行show databases时,报了如下错误:
Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

直接把错误原因复制到百度和google搜出来的解决方案都没有解决问题,后来查看hive日志,发现真实错误其实是:
Caused by: org.apache.hadoop.hive.metastore.api.MetaException: Hive Schema version 2.3.0 does not match metastore’s schema version 1.2.0 Metastore is not upgraded or corrupt

解决方法

连接mysql,选择hive数据库,修改VERSION表中的SCHEMA_VERSION为2.3.0,问题就解决了。
代码:

mysql:mysql -uroot -p (123456)
use hive;
select * from version;
update VERSION set SCHEMA_VERSION='2.3.0' where  VER_ID=1;

这里用的是一位大佬的方法,链接:https://blog.csdn.net/qq_27882063/article/details/79886935

总结

在遇到问题的时候,很多时候控制台只是显示了什么错误,并没有告诉你是由什么引起的,所以应该查看日志。

查看日志的方法

进入hive的conf目录
查看hive-log4j2.properties文件,发现日志的输出目录如下:
在这里插入图片描述
我这里默认的就是/tmp/root下的hive.log,查看即可
在这里插入图片描述使用其它东西的套路也是一样的,就是查看配置文件,看它的日志目录是在哪里,再查看即可。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐