HiveAccessControlException Permission denied
时间: 2023-10-17 10:26:56 浏览: 260
accessdenied
HiveAccessControlException Permission denied是Hive中的一个错误,表示用户在Hive上执行操作时被拒绝了权限。具体报错信息为"Permission denied:user [test1] does not have [RWSTORAGE] privilege on [jdbc:oracle:thin:@//192.168.1.51:1521/orcl/test.table_for_hive] "。
这个错误通常是因为用户没有足够的权限来执行所需的操作。在这种情况下,解决方法是在Ranger中给test1用户授予相关权限。可以通过在Hadoop SQL Policies中添加一个策略或者在已有策略中配置Storage-type:*和Storage-url:*来解决这个问题。
此外,还有一种可能的原因是HDFS上缺少相应的用户目录。如果HDFS上没有/root用户对应的文件夹/user/root,那么Hive会默认以root身份将作业写入HDFS文件系统中。但由于root用户没有对HDFS目录的写入权限,就会导致该错误的发生。可以通过在HDFS中创建/root用户的目录并授权给root用户来解决这个问题。具体步骤可以使用以下命令:
- 第一种方法:
$ su - hdfs
$ hdfs dfs -mkdir /user/root
$ hdfs dfs -chown root:hdfs /user/root
$ exit
- 第二种方法:在HDFS的配置文件中将dfs.permissions修改为False(不推荐使用)
- 第三种方法:在/etc/profile文件中添加export HADOOP_USER_NAME=hdfs,并执行source /etc/profile命令使其立即生效。也可以使用sed命令执行sed -i '$a export HADOOP_USER_NAME=hdfs',然后执行source /etc/profile。注意,这里的root可以是其他用户(路径),根据实际情况进行调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [16.HiveAccessControlException Permission denied](https://blog.csdn.net/weixin_43346403/article/details/129185685)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [hive报错 没有root用户权限 org.apache.hadoop.security.AccessControlException: Permission denied: user...](https://blog.csdn.net/SDKLHKJAS/article/details/106339890)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文