Beeline version 1.2.1 by Apache Hive
beeline> !connect jdbc:hive2://192.168.173.128:10000
Connecting to jdbc:hive2://192.168.173.128:10000
Enter username for jdbc:hive2://192.168.173.128:10000: root
Enter password for jdbc:hive2://192.168.173.128:10000:
Error: Failed to open new session: : : : Permission denied: user=root, access=EXECUTE, inode="/tmp":hadoop:supergroup:drwx------
at (:271)
at (:257)
at (:208)
at (:171)
at (:6547)
at (:4182)
at (:881)
at (:821)
at $ClientNamenodeProtocol$()
at $Server$(:619)
at $(:975)
at $Handler$(:2040)
at $Handler$(:2036)
at (Native Method)
at (:422)
at (:1692)
at $(:2034) (state=,code=0)
0: jdbc:hive2://192.168.173.128:10000 (closed)>
解决办法:
这里明显就是因为权限的问题,而我这里使用是yarn 集群的hadoop ,hadoop集群的用户( hadoop )是linux系统的子用户 。所以使用beeline登录时,用户名应该是hadoop 不是root ,即: Enter username for jdbc:hive2://192.168.173.128:10000: root 这里输入用户名时改为: hadoop,便不会再报错了