我不能运行show数据库;配置单元终端上的命令

egmofgnx  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(396)

当我写作的时候

> show databases;

在hive中,我得到以下错误;

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

你能提供一个解决方案吗?

i2byvkas

i2byvkas1#

这可能是由于默认设置:/user/hive/warehouse(在hive site.xml中)未正确创建或未授予权限(请注意这是**用户,不是usr)
这可能是罪魁祸首,如果你正在做一个手动设置!
1) 如果需要,您可以首先 checkout hive-site.xml(在我的示例中位于$hive\u home/conf是/usr/local/hive/conf),但这是最初设置的默认值
2) 使用hadoopfs-ls/user/hive/warehouse检查hadoop中的路径是否存在?
3) 使用hadoop fs-mkdir/usr/hive/wawrehouse创建hadoop文件夹如果不存在,请查看使用hadoop fs-ls的访问权限。。。。。。。。。。。。。。。
4) 使用hadoop fs-chmod g+w/usr/。。。。。。。。。。。。。。。。。授予必要的权利
无论是用户vs usr,还是仓库的设置,都可能是常见的原因
引用(来自hive site.xml):

<property>
   <name>hive.metastore.warehouse.dir</name>
   <value>/user/hive/warehouse</value>
   <description>location of default database for the warehouse</description>
</property>

注意:您还必须确保另一个hadoop文件夹/tmp也按上述方式正确设置

laawzig2

laawzig22#

在子配置单元目录下运行此命令;

bin/schematool -initSchema -dbType derby

因此,确保服务已启动;

start-all.sh

运行此命令。

相关问题