• 【hive & Hadoop】踩坑 记录


    hive & Hadoop】踩坑 记录

    平台部署知识
    本文记录的配置 hive Hadoop 时可能会出现的问题以及解决方案。

    目录


    文章的封面

    Hive记录

    在这类您将可以查询到 hive 相关的异常信息!

    hive 启动报错 Permission denied Unable to determine Hadoop version information.

    本次发生的异常信息,如果出现了类似下面的错误信息,则可能可以在本章找到解决方案!

    /opt/apache-hive-2.3.9/bin/hive: line 247: /tmp/gunan/stderr: Permission denied
    Unable to determine Hadoop version information.
    'hadoop version' returned:
    Hadoop 2.7.7 Subversion Unknown -r c1aad84bd27cd79c3d1a7dd58202a8c3ee1ed3ac Compiled by stevel on 2018-07-18T22:47Z Compiled with protoc 2.5.0 From source with checksum 792e15d20b12c74bd6f19a1fb886490 This command was run using /opt/hadoop-2.7.7/share/hadoop/common/hadoop-common-2.7.7.jar
    
    • 1
    • 2
    • 3
    • 4
    原因解释

    Hive在尝试访问/tmp/gunan/stderr时遇到了Permission denied错误。这个错误通常意味着运行Hive的用户没有足够的权限来写入/tmp/gunan/stderr文件或目录。同时,错误消息还提到无法确定Hadoop的版本信息,但这可能是由于Hive无法正确执行hadoop version命令造成的。

    本次的解决方案
    检查目录权限:

    首先,您需要确保/tmp/gunan/目录存在,并且运行Hive的用户有足够的权限来在其中创建和写入文件。您可以使用以下命令来检查和更改权限:

    # 检查目录是否存在
    ls -ld /tmp/gunan/
    
    # 如果目录不存在,创建它
    mkdir -p /tmp/gunan/
    
    # 更改目录的权限,使Hive用户有读写权限
    chown -R hive:hive /tmp/gunan/
    chmod -R 755 /tmp/gunan/
    请将hive:hive替换为实际运行Hive的用户和组。
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    检查Hadoop安装:

    由于Hive依赖于Hadoop,您需要确保Hadoop已经正确安装并且hadoop命令可以在Hive的上下文中执行。您可以尝试手动运行hadoop version来检查是否能正确获取版本信息。

    /opt/hadoop-2.7.7/bin/hadoop version
    
    • 1

    如果这个命令成功执行并返回了Hadoop的版本信息,那么说明Hadoop的安装和配置是正确的。如果命令执行失败,您可能需要检查Hadoop的配置和环境变量。

    检查Hive配置:

    检查Hive的配置文件(如hive-site.xml),确保其中关于Hadoop的路径和配置是正确的。特别是检查hadoop.home.dir属性,它应该指向Hadoop的安装目录。
    最终发现是缺少此配置项目!!!

    本文章中的数据不全,随着时间的推移,可能会有更多的踩坑被记录下来,您可以前往:https://www.lingyuzhao.top/?/linkController=/articleController&link=-77262618 查阅最新的更新!

  • 相关阅读:
    修改时间服务器-域控环境
    NOI / 1.2编程基础之变量定义、赋值及转换
    Unity DOTS Component概述
    局域网内部如何实现文件夹共享
    使用Unity的Input.GetAxis(““)控制物体移动、旋转
    linux重要的目录之proc和dev目录
    ARM64 SMP多核启动详解1(spin_table)
    64 ---- 两直线的位置关系
    【python】python面向对象——类的使用
    OSG笔记:对线求交失败
  • 原文地址:https://blog.csdn.net/Liming07/article/details/136415942