远程访问,通过JDBC连接到Beeline对Hive进行操作报错

bash 复制代码
[root@hadoop02 conf]# beeline -u jdbc:hive2://hadoop01:10000
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/lbl/install/hive/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/lbl/install/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Connecting to jdbc:hive2://hadoop01:10000
24/11/02 11:04:09 [main]: WARN jdbc.HiveConnection: Failed to connect to hadoop01:10000
Error: Could not open client transport with JDBC Uri: jdbc:hive2://hadoop01-lbl:10000: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.security.AccessControlException: Permission denied: user=anonymous, access=EXECUTE, inode="/tmp":root:supergroup:drwxrwx---
        at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkTraverse(FSPermissionChecker.java:266)

问题原因:

  1. 连接失败:你尝试通过 JDBC 连接到 Hive,但由于权限问题,连接未成功。

  2. 权限被拒绝 :错误提示中指出,用户 anonymous 没有权限执行某些操作,特别是访问 /tmp 目录。根据错误信息,目录的权限是 drwxrwx---,这意味着只有拥有者(root)和所在组(supergroup)的用户可以访问。

解决方法:

  1. 检查用户权限

    • 确保你使用的用户具有足够的权限来访问 /tmp 目录。可以考虑使用一个具有正确权限的用户来进行连接。
  2. 更改目录权限

    • 如果可以,尝试调整 /tmp 目录的权限,以允许匿名用户或你正在使用的用户进行访问。例如,可以使用以下命令更改权限:

      bash 复制代码
      hdfs dfs -chmod 1777 /tmp
  3. 配置 Hive 和 Hadoop

    • 确保你的 Hive 和 Hadoop 配置文件中,hive.exec.scratchdir 设置为一个有权限的目录。
    • 检查 Hive 的安全配置,确保允许你使用的用户连接。
  4. 使用认证用户

    • 如果 Hive 启用了 Kerberos 认证,确保你使用的是正确的 Kerberos 用户,并且已经获得了有效的票据。
相关推荐
IT成长日记27 分钟前
【Hive入门】Hive基础操作与SQL语法:DDL操作全面指南
hive·hadoop·sql·ddl操作
IT成长日记31 分钟前
【Hive入门】Hive分桶表深度解析:从哈希分桶到Join优化的完整指南
hive·hadoop·哈希算法·哈希分桶·join优化
和算法死磕到底3 小时前
ubantu18.04(Hadoop3.1.3)之Spark安装和编程实践
大数据·hadoop·pycharm·spark
菜鸟、上路3 小时前
Hadoop 集群扩容新增节点操作文档
大数据·hadoop·分布式
IT成长日记4 小时前
【Hive入门】Hive动态分区与静态分区:使用场景与性能对比完全指南
数据仓库·hive·hadoop·动态分区·静态分区
嘟嘟嘟嘟嘟嘟嘟.5 小时前
spark和hadoop之间的对比和联系
hadoop·spark
一个数据大开发9 小时前
数据资产价值及其实现路径-简答题回顾
大数据·数据仓库·数据
viperrrrrrrrrr711 小时前
大数据学习(112)-HIVE中的窗口函数
hive·sql·学习
酷爱码17 小时前
如何通过python连接hive,并对里面的表进行增删改查操作
开发语言·hive·python
Debug_TheWorld19 小时前
Hive学习
hive