文档首页/ MapReduce服务 MRS/ 组件操作指南(LTS版)(巴黎区域)/ 使用CarbonData/ CarbonData FAQ/ 为什么在V100R002C50RC1版本中创建的CarbonData表不具有Hive特权为非所有者提供的特权?
更新时间:2022-12-14 GMT+08:00

为什么在V100R002C50RC1版本中创建的CarbonData表不具有Hive特权为非所有者提供的特权?

问题

为什么在V100R002C50RC1版本中创建的CarbonData表不具有Hive特权为非所有者提供的特权?

回答

Hive ACL在V100R002C50RC1版本之后实现,因此无法体现Hive ACL特权。

为了支持在V100R002C50RC1中创建的CarbonData表的HIVE ACL特权,必须由表的所有者执行以下两个ALTER TABLE命令。

ALTER TABLE $dbname.$tablename SET LOCATION '$carbon.store/$dbname/$tablename';

ALTER TABLE $dbname.$tablename SET SERDEPROPERTIES ('path'='$carbon.store/$dbname/$tablename');

示例:

假设数据库名称为"carbondb",表名为"carbontable",Carbon的储存位置为“hdfs://hacluster/user/hive/warehouse/carbon.store”,执行如下命令:

ALTER TABLE carbondb.carbontable SET LOCATION 'hdfs://hacluster/user/hive/warehouse/carbon.store/carbondb/carbontable';

ALTER TABLE carbondb.carbontable SET SERDEPROPERTIES ('path'='hdfs://hacluster/user/hive/warehouse/carbon.store/carbondb/carbontable');