Hive在创建表/数据库时出现了权限错误。

8

我在Hive中遇到了权限错误。

我使用的是IBM云 - my.imdemocloud.com

hive> create table a(key INT); FAILED: Error in metadata: MetaException(message:Got exception: org.apache.hadoop.security.AccessControlException org.apache.hadoop.security.AccessControlException: Permission denied: user=nehpraka, access=WRITE, inode="warehouse":biadmin:biadmin:rwxrwxr-x) FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

然而,我已经给了我的用户所有的角色。

hive> SHOW GRANT USER nehpraka on DATABASE default; OK

database default principalName nehpraka principalType USER privilege Create grantTime Wed Apr 16 14:17:51 EDT 2014 grantor nehpraka Time taken: 0.051 seconds

请帮我解决这个问题。

谢谢 & 祝好

3个回答

4
我已经找到了解决方案。
我正在使用IBM Big Insight云,我们可以按照以下方式创建数据库。
create database DataBaseName location 'hdfs://master-1-internal.imdemocloud.com:9000/user/<user_name>';

感谢大家的帮助。

3

这看起来像是HDFS文件夹写入权限问题。

您尝试使用hdfs用户了吗?基本上检查HDFS上的hive仓库,该文件夹应该对您的用户具有RW权限。


我没有权限这样做,我正在使用IBM的云 http://bigsql.imdemocloud.com/ https://my.imdemocloud.com 我未经授权。 - orNehPraka

1
如果您正在使用 Cloudera 版本的 Hadoop 和 Hive,则尝试使用以下命令打开 Hive:
sudo hive

如果需要密码,请输入cloudera。 在Cloudera版本中,只有超级用户才有在HDFS上进行Hive写入操作的权限。 这将对您有所帮助。

我正在使用IBM云http://bigsql.imdemocloud.com/ https://my.imdemocloud.com - orNehPraka
由于某种奇怪的原因,我的Cloudera安装仅以用户“hdfs”初始化Hive。就像sudo -u hdfs hive这样。 - Jari Turkia

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接