创建表报错:
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
);
这样也可以创建。