问题描述:
同样的查询语句在Hive客户端中能够顺利执行,而通过JDBC查询时报如下错误:
org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=EXECUTE, inode="/tmp/hadoop-yarn/staging":Gqb:supergroup:drwx------
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:399)
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkTraverse(FSPermissionChecker.java:315)
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:242)
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:193)
问题原因:
通过JDBC执行最简单的查询语句能够顺利执行,但执行需要跑MR任务的语句时,就报了如上的错误。
故猜测是因为跑MR任务时,底层需要使用到Yarn,而当前JDBC的访问者权限不足。
解决方法:
在hadoop中执行hdfs dfs -chmod -R 777 /tmp即可解决。
标签:hdfs,IntelliJ,FSPermissionChecker,hadoop,IDEA,报错,namenode,apache,org From: https://www.cnblogs.com/qibingu/p/17184248.html