Hive在创建表/数据库时抛出权限错误

时间:2014-04-16 19:14:40

标签: hadoop hive permission-denied

我在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

请帮帮我。

谢谢& Ragards

3 个答案:

答案 0 :(得分:6)

我得到了解决方案。

我使用的是IBM Big Insight云,我们可以通过这种方式创建数据库。

create database DataBaseName location 'hdfs://master-1-internal.imdemocloud.com:9000/user/<user_name>';

感谢所有人帮助我。

答案 1 :(得分:3)

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

您是否尝试过使用hdfs用户?基本上检查HDFS上的配置单元仓库,该文件夹应该具有用户的RW权限。

答案 2 :(得分:1)

如果您使用Cloudera版本的hadoop和hive,请尝试使用以下命令打开配置单元:

sudo hive

如果要求输入密码,请输入 cloudera 。 在cloudera版本中,只有超级用户才有权在hdfs上发送写入权限。 这对你有帮助。