hive 权限:Authorization failed:No privilege 'Create' found for outputs .

创建表报错:

create table test

(

name string

);

Authorization failed:No privilege 'Create' found for outputs { database:dbname}. Use show grant to get more details.

解决办法:

1.给当前用户权限:

hive>      set;

用户:

system:user.name=hadoop

给用户hadoop 在数据库 dbname 创建表的权限:

hive> grant create on database dbname to userhadoop

其他权限也可以: all是全部权限。

如:

grant all on database dbname to user hadoop;

2.在其他有权限的数据库创建表

比如 当前用户在db1里面有权限,而在dbname里面是没有的那么可以:

use db1;

create table dbname.test

(

name string

);

这样也可以创建。

http://blog.csdn.net/lxpbs8851/article/details/11616971

原文地址:https://www.cnblogs.com/xd502djj/p/3812531.html