启动hive后,在命令提示符下输入show databases;命令,报告下面的错误:

错误详情

FAILED: HiveException java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

错误分析
该错误表明无法初始化元数据存储客户端的会话对象,即无法访问Hive元数据。
解决:
运行hive --service metastore,即手动开启metastore的会话。结果报告下面的异常:
……
Caused by: java.lang.RuntimeException: Driver org.apache.derby.jdbc.EmbeddedDriver claims to not accept jdbcUrl, jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF8&useSSL=false
这个异常表明JDBC驱动使用的derby的驱动,而连接URL则使用的mysql连接字符串。属性javax.jdo.option.ConnectionDriverName配置错了。
解决方法:
在hive-site.xml配置文件中修改javax.jdo.option.ConnectionDriverName配置,不能有空格及其他符号
总结
总之,报告这个错误很有可能是存储元数据的关系型数据库有问题,很可能是没有启动,或者连接配置错误。
注意:hive默认的日志路径为/tmp/root/hive.log,可以使用tail -F /tmp/root/hive.log来监控hive的运行。

发布了50 篇原创文章 · 获赞 30 · 访问量 7045

猜你喜欢

转载自blog.csdn.net/qq_44472134/article/details/104167742
今日推荐