-3

插入到 limifang_oracle_store002(id,name) values(1,'lisi');

异常: Error: Error while compile statement: FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.InvalidTableException: Table not found limifang_oracle_store002 (state=42000,code=40000) 0: jdbc:hive2://192.168.2.16 :2181,192.168.2.1> 插入到 liminfang_oracle_store002(id,name) values(1,'lisi'); 警告:Hive-on-MR 在 Hive 2 中已弃用,并且可能在未来的版本中不可用。考虑使用不同的执行引擎(即 spark、tez)或使用 Hive 1.X 版本。错误:org.apache.hive.service.cli.HiveSQLException:处理语句时出错:FAILED:执行错误,从 org.apache.hadoop.hive.ql.exec.mr.MapRedTask 返回代码 1。权限被拒绝:user=kaif1, access=EXECUTE, inode="/tmp/hadoop-yarn/staging/kaif1/.staging": root:supergroup:drwx------

权限信息如下: show grant role kaif1;

|数据库| 表| 隔断| 专栏 | 校长姓名 | 主体类型 | 特权 | 授予选项 | 授予时间 | 设保人 |

| ziy_db_109 | liminfang_oracle_store002 | kaif1 | 角色 | 删除 | 假 | 1022296989000
| ziy_db_109 | liminfang_oracle_store002 | kaif1 | 角色 | 插入 | 假 | 1022295356000 |

4

1 回答 1

1

检查那些组中的Hadoop集群HDFS,是否有hadoop、hdfs、supergroup等组。

  1. 首先在Linux系统中建立相应的用户test和supergroup组(Hadoop或HDFS组)。

2 将测试用户添加到supergroup 组(或Hadoop、HDFS 组)。

3 将hive与hive用户(管理员)beeline连接,创建角色:test_role,执行命令:创建角色test_role;

4 授予 test_role 权限并执行命令:grant all on testdb。testtable 到角色 test_role;(他里面肯定有库testdb,表testtable)

5 将test_role角色分配给test用户执行命令:grant test_role to group test;

  1. 验证使用测试用户 beeline 连接配置单元:使用 testdb;显示表格;检查它是否是错误的。
于 2018-08-28T09:44:07.083 回答