我已经安装了Hive,将其添加到PATH并且能够使用终端中的hive
命令打开它。
但是,当我尝试运行
等基本命令时 SHOW TABLES;
我收到错误:
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
我所遵循的说明并未暗示必须实例化任何内容。
供参考,我使用的是Hadoop:The Definitive Guide(第4版)一书,并在我的机器上本地运行。
运行JPS时,以下服务正在运行:
2528 DataNode 7232 RunJar 2441 NameNode 7401 Jps 2634 SecondaryNameNode 282 2842 NodeManager 2751 ResourceManager
答案 0 :(得分:1)
我通过删除derby数据库文件来修复
rm -rf $HIVE_HOME/bin/metastore_db
和
$HIVE_HOME/bin/schematool -initSchema -dbType derby
答案 1 :(得分:0)
我能够通过初始化架构来解决此问题。我很惊讶它在任何地方都没有提到。
初始化架构:
接下来,您应该收到一些确认消息
Metastore连接驱动程序:org.apache.derby.jdbc.EmbeddedDriver Metastore连接用户:APP 启动Metastore架构初始化为2.3.0 初始化脚本hive-schema-2.3.0.derby.sql 初始化脚本已完成 schemaTool已完成
启动配置单元
运行任何基本命令以确定Hive是否正常运行,例如SHOW TABLES;