Hive安装使用中的一些问题

作者: sparkle123 | 来源:发表于2018-04-13 14:26 被阅读0次

    1.非root用户连接mysql服务时,报如下错误,

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    

    原来是mysql服务没有启动,启动mysql服务时候,一直失败,sudo切换执行命令mysql -uroot -proot即可。

    2.安装hivemysql完成后,将mysql的连接jar包拷贝mysql-connector-java-x.x.xx-bin.jar$HIVE_HOME/lib目录下。
    3.如果出现没有权限的问题,mysql授权(在安装mysql的机器上执行)
    执行下面的语句:

    mysql -uroot -p
    
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
    
    FLUSH PRIVILEGES;
    

    . : 所有库下的所有表
    %:任何IP地址或主机都可以连接

    1. Jline包版本不一致的问题:Hive使用的Jline(命令行解析包)版本高于Hadoop的版本。
      需要拷贝$HIVE_HOME/lib目录中jline.2.12.jar的jar包替换掉hadoop中的
      /home/hadoop/app/hadoop-2.6.4/share/hadoop/yarn/lib/jline-0.9.94.jar

    4.bin/hive报如下错误:

    Exception in thread "main" java.lang.RuntimeException: java.net.ConnectException: Call From hadoop/192.168.21.191 to hadoop:8020 failed on connection exception: java.net.ConnectException: 拒绝连接; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

    解决办法:先启动HDFS

    5.在hive窗口执行查询语句,报错:

    hive> select * from hive_count;
    FAILED: SemanticException Unable to determine if hdfs://hadoop:9000/user/hive/warehouse/hive_count is encrypted: java.lang.IllegalArgumentException: Wrong FS: hdfs://hadoop:9000/user/hive/warehouse/hive_count, expected: hdfs://hadoop:8020

    解决办法:
    需要修改hive 数据库里面

    DBS  : Hive数据仓库的总路径  
    SDS  : Hive每张表对应的路径
    

    6.在hive窗口提交MR任务时,报错:

    The auxService:mapreduce_shuffle does not exist

    解决办法:
    yarn-site.xml配置文件中增加:

      <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
    

    7.进入spark-shell时,./spark-shell --master spark://hdp-sk-01:7077hive出现以下错误:

    Another instance of Derby may have already booted the database /home/spark/app/spark-1.5.1-bin-hadoop2.4/bin/metastore_db.

    错误原因:

    突然离线,易造成hive没能来得及删除自动创建的metastore_db文件夹,这时再次用hive命令进入,则会产生如上报错。

    解决办法:将metastore_db文件夹改名或者干脆删除,然后重新运行hive命令启动即可
    rm -r metastore_db/

    8.hive shell中执行很简单的排序MR任务,报错:

    image.png

    查看yarn-application页面

    时间不一致.png

    借助SecureCRT客户端的群发命令,向集群各个节点群发同步命令:
    sudo date -s "2018-04-18 15:52:00"

    再次运行任务,OK。
    生产环境上一般使用外网时间服务器进行内网集群的时间同步,定时启用crontab任务

    相关文章

      网友评论

        本文标题:Hive安装使用中的一些问题

        本文链接:https://www.haomeiwen.com/subject/clpckftx.html