Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hado

在hive中进行撤销角色或者用户权限的问题上出现了如下的错误

Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Cannot find privilege Privilege [name=SELECT, columns=null] for Principal [name=zhangsan, type=USER] on Object [type=TABLE_OR_VIEW, name=default.person] granted by root

一,在hive中进行撤销角色权限(没有错误)

取消角色 mmm hive操作表person权限

revoke select on person from role mmm;

查看角色 mmm 操作Hive 权限

show grant role mmm;

结果如下

在这里插入图片描述

二,在hive中进行撤销用户权限(出现错误)

取消用户 zhangsan hive操作表person权限

revoke select on person from user zhangsan;

查看用户 zhangsan 操作Hive 权限

show grant user zhangsan;

结果出现错误

在这里插入图片描述

三,解决方法

原因:

因为下面的这条语句我写在了root用户所登录的节点,所以报错,这条命令应卸载zhangsan用户登录的目录上才不会报错,会将zhangsan的关于person表的查询权限撤销掉

revoke select on person from user zhangsan;

再次进行查询,
下面这条语句,在root用户下进行操作可以,在zhangsan用户下操作也可以

show grant user zhangsan;

结果如下,不会显示报错成功撤销权限
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 这是一个Hive执行操作时出现错误的提示,错误信息为“failed: execution error, return code 2 from org.apache.hadoop.hive”。需要进一步检查Hive的日志以确定具体的错误原因。 ### 回答2: 这个错误信息是由Hadoop的Hive组件产生的,它通常意味着Hive在执行HQL语句时遇到了一个错误。在大多数情况下,这个错误是由于一个或多个问题引起的。下面是一些常见的原因,导致这个错误: 1.语法错误:如果HQL语句包含语法错误,Hive就会生成这个错误。检查错误提示信息,看看是否有语法错误,如拼写错误、缺少括号、丢失分号等。 2. 表不存在:如果HQL语句中查询的表不存在,Hive将抛出这个错误。确保表不存在之前,首先在Hive中创建它。 3. 权限问题:如果执行语句的用户没有足够的权限来查看或操作数据,则Hive会生成这个错误。检查当前用户是否有足够的权限,并确保他们拥有对相关表或文件的读写权限。 4. 数据格式错误:有时,Hive无法正确处理查询结果中的数据。这可能是因为数据格式不正确,如数据类型不匹配、字符串格式错误等。检查数据格式是否正确,并尝试使用正确的数据类型。 5. 程序错误:如果执行的Hive程序出现错误,也会生成这个错误。在调试程序时,可以检查程序的日志或输出,以找出哪些部分出了问题。 总之,错误代码2通常表示在执行HQL语句时遇到了问题。在排除上述问题并确定出错原因后,我们可以修复问题并重新执行查询或其他Hive任务。 ### 回答3: 这个错误通常是由于Hive查询的执行出现了问题造成的。其中,org.apache.hadoop.hive指的是Hive的一个内部库,该库是Hadoop的一个重要组成部分,用于执行Hive查询和数据操作的任务。 造成错误的原因很多,常见的包括: 1. 查询操作超过了Hive的内存限制。Hive会将查询过程中产生的一些中间数据存储到内存中,如果数据量太大,就会导致内存溢出。 2. 查询所需的数据已被删除或移动,无法被找到。这通常是由于数据源的问题或数据仓库管理的不当造成的。 3. Hive元数据出现了问题。元数据是Hive用于管理数据的一种方法,如果元数据错误或已被修改,则可能导致执行查询时出现问题。 4. Hadoop集群出现故障。Hadoop是Hive所依赖的底层架构,如果Hadoop集群发生故障,可能导致Hive查询无法正常执行。 对于这个问题,需要根据具体情况进行排查和解决。可以采取以下措施: 1. 尝试优化查询,减少内存占用。可以通过调整Hive的内存限制等参数来实现。 2. 确保所需的数据存在并能够被访问。可以检查数据源位置是否正确,是否有足够的权限等。 3. 检查Hive元数据是否正确。可以通过执行一些Hive元数据管理操作来检查和修复问题。 4. 检查Hadoop集群是否正常。可以通过查看Hadoop系统日志等方式来检查和修复问题。 需要注意的是,在进行排查问题时,需要仔细检查错误提示信息并仔细分析,这样才能找到问题的根源并采取相应的措施解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhi金——金小亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值