Hive启动的时候报错如下图所示:
因为这个Bug搞了三小时,在这里记录以下,避免下次踩坑。
在Hive启动的时候去配置启动引擎为tez,之后启动hive遇到错误:
java.lang.NoClassDefFoundError: org/apache/tez/dag/api/SessionNotRunning
显示会话服务无法开启。
解决方法:将tez和tez/lib下的jar包都复制到hive/lib目录下。
编辑hadoop-env.sh:
vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh
在该文件下添加如下内容:
export TEZ_HOME=/opt/module/tez
for jar in `ls $TEZ_HOME |grep jar`; do
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$TEZ_HOME/$jar
done
for jar in `ls $TEZ_HOME/lib`; do
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$TEZ_HOME/lib/$jar
done
最后再source更新一下:
source ~/.bashrc
不用重启hadoop集群。可以进入hive即可正常使用。