在配置单元中创建数据库时权限被拒绝

时间:2015-08-25 18:30:50

标签: hadoop

我正在尝试在hive中使用数据库,但是当我在HIVE中运行以下查询时:

CREATE DATABASE BIGDATA;

我收到以下错误消息:

  

失败:元数据错误:MetaException(消息:得到异常:org.apache.hadoop.security.AccessControlException org.apache.hadoop.security.AccessControlException:Permission denied:user = aseema,access = WRITE,inode =“” :hduser:超组:rwxr-XR-x)的   FAILED:执行错误,从org.apache.hadoop.hive.ql.exec.DDLTask返回代码1

造成这种情况的原因是什么?

2 个答案:

答案 0 :(得分:2)

这是因为hdfs中缺少用户aseema的权限。请按照以下步骤操作。

以hduser身份登录并执行以下操作(从日志开始,似乎hduser是超级用户)

hadoop fs -mkdir -p /user/hive/warehouse
hadoop fs -mkdir /tmp
hadoop fs -chmod -R 777 /user/hive
hadoop fs -chmod 777 /tmp

在此之后,尝试从aseema用户执行create database语句。

答案 1 :(得分:0)

如果从本地模式运行,则应从hdfs user:

运行此命令
su hdfs

如果您愿意,请更改以下权限:

hdfs dfs -chown -R <username_of_new_owner> /user