知识目录
- 一、写在前面✨
- 二、Hive启动hiveserver2报错🔥
- 三、HiveServer2启动方式✨
- 四、Hive执行SQL语句报一大堆日志🍉
- 五、Hive使用Load加载数据报错🍭
- 六、Hive执行含Count的SQL语句报错🍉
- 七、Hive执行SQL语句报/bin/java🍭
- 八、总结撒花😊
一、写在前面✨
大家好!我是初心,希望我们一路走来能坚守初心!🔥
今天跟大家分享的文章是 大数据中的Hive报错锦集分享,以此记录我在搭建大数据平台可视化展示中遇到的部分错误
,希望能帮助到大家!本篇文章收录于 初心 的 Hive 专栏。
🏠 个人主页:初心%个人主页
🧑 个人简介:大家好,我是初心,和大家共同努力
💕欢迎大家:这里是CSDN,我记录知识的地方,喜欢的话请三连,有问题请私信😘
💕 迎着风,拥抱彩虹!』—— 黄霄雲「你的答案」
二、Hive启动hiveserver2报错🔥
- 报错内容
java.lang.classnotfoundexception: org.apache.tez.dag.api.tezconfiguration
- 解决方案
hive-site.xml添加以下配置可以解决。
<property>
<name>hive.server2.active.passive.ha.enable</name>
<value>true</value>
</property>
三、HiveServer2启动方式✨
第一种:占用一个Xshell窗口的启动
$HIVE_HOME/bin/hive --service hiveserver2
第二种:也是占用Xshell窗口启动
$HIVE_HOME/bin/hiveserver2
第三种:悬挂启动(推荐,hive.log文件和路径换自己的)
nohup $HIVE_HOME/bin/hiveserver2 >/opt/module/logs/hive_log/hive.log 2>&1 &
启动后会得到一个进程号:
悬挂启动关闭HiveServer2的方式。
首先查询进程号:
ps -ef | grep hive
杀死进程号:
kill -15 3475(进程号)
细心的朋友会发现,这个进程号就是我们悬挂启动HiveServer2时显示的进程号,所以,你直接 kill 掉那个进程号,不查询也是可以的。查询是在我们启动HiveServer2之后还执行了很多命令情况下使用。
四、Hive执行SQL语句报一大堆日志🍉
- 问题详情
在hive-3.1.x版本中,使用hive shell时,会发现在查询命令中夹杂大量的日志信息,严重干扰查询结果显示,特别是强迫症患者,不能忍受。
- 解决方案
在 Hive 安装目录的 conf 目录下创建出 log4j.properties 日志配置文件,添加如下内容。
log4j.rootLogger=WARN, CA
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
五、Hive使用Load加载数据报错🍭
- 报错内容
Invalid path ''/data/deal_after_taoao.csv'': No files matching path hdfs://mycluster/data/deal_after_taoao.csv
- 解决方案
命令敲错了,应该用大写写法。Load加载非csv文件也是同理,只要是报这一类错误。
LOAD DATA INPATH '/data/deal_after_taobao.csv' OVERWRITE INTO TABLE taobao.taobao;
六、Hive执行含Count的SQL语句报错🍉
- 报错内容
[SIGINT handler] ERROR org.apache.hadoop.hive.ql.exec.tez.TezJobExecHelper
或
java.lang.ClassNotFoundException: org.apache.tez.dag.api.DAG
- 解决方案
Hive执行含有Count的SQL语句,属于Map和Reduce任务,需要开启Yarn。在yarn-site.xml和mapred-site.xml文件中配置好yarn并启动即可。
启动Yarn:(ResourceManager结点上)
start-yarn.sh
启动历史服务器:(历史服务器结点上的Hadoop目录下,其实也可以不启动,无妨)
bin/mapred --daemon start historyserver
七、Hive执行SQL语句报/bin/java🍭
- 报错内容
/bin/java: No such file or directory
- 解决方案
需要在集群中的每个结点上,创建一个/bin/java 的软连接,实际指向 jdk 真实目录。(下面的/opt/module/HA是我的jdk安装路径,换成自己的即可)
ln -s /opt/module/HA/jdk1.8/bin/java /bin/java
八、总结撒花😊
本次主要跟大家分享了我在使用Hive中遇到的部分报错锦集,以此做个记录😊
✨ 这就是今天要分享给大家的全部内容了,我们下期再见!😊
🏠 本文由初心原创,首发于CSDN博客, 博客主页:初心%🏠
🏠 我在CSDN等你哦!😍