User xxx does not have privileges for CREATETABLE的解决办法

经kerbors认证的用户无法在hive命令行中创建外部表

......

> )
> STORED AS PARQUET
> LOCATION '/cdp/hbase/user'
> TBLPROPERTIES('parquet.compression'='SNAPPY');
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:User cdh_admin does not have privileges for CREATETABLE)

 

解决办法:参考https://community.cloudera.com/t5/Support-Questions/quot-User-does-not-have-privileges-for-CREATETABLE-quot/td-p/21044

 
 
Explorer
 

Hi

 

I had the same problem. I found out that the table creation succeeds if one specifies the fully qualified hdfs location.

 

create external table test (a string); // works

 

create external table test_ext (a string) LOCATION '/warehouse/projects/mypath/public'; fails

 

create external table test_ext (a string) LOCATION 'hdfs://nameservice1/warehouse/projects/mypath/public'; works fine

 

Hope this works for you too.

 

Deenar

 

即在路径之前加上hdfs://nameservice1前缀

 

posted @ 2021-08-28 13:30  梦醒江南·Infinite  阅读(3173)  评论(0编辑  收藏  举报