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前缀

原文地址:https://www.cnblogs.com/144823836yj/p/15196627.html