目录
前言
最近,运行运行hadoop集群的时候,启动hive遇到了这个问题,起初虽有报错但依然可以启动,现在启动失败了,原因分析,大致是后面安装的Spark与Hive的一些配置,没有弄好导致的。
问题一
解决一
进入hive目录的bin目录下编辑hive文件,但是在此之前先把文件备份好。
cd /export/servers/hive/bin/
cp -r hive hive.xml
vi hive
找到以下这个位置,进行编辑
# add Spark assembly jar to the classpath
if [[ -n "$SPARK_HOME" ]]
then
sparkAssemblyPath=`ls ${SPARK_HOME}/lib/spark-assembly-*.jar`
CLASSPATH="${CLASSPATH}:${sparkAssemblyPath}"
fi
将“sparkAssemblyPath=`ls ${SPARK_HOME}/lib/spark-assembly-*.jar`”修改成以下内容
sparkAssemblyPath=`ls ${SPARK_HOME}/jars/*.jar`
退出保存
问题二
再次运行hive的时候,又一个报错,经过阅读文章,笔者初步判断这是之前为了时hadoop执行hbase的jar包在hadoop-env.sh文件下设置的静态环境变量导致的。
export HADOOP_CLASSPATH=$HBASE_CLASSPATH:/export/servers/hbase/lib/*
解决二
vi /export/servers/hadoop-2.10.1/etc/hadoop/hadoop-env.sh
将原来的设置改成以下内容
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HBASE_CLASSPATH:/export/servers/hbase/lib/*
再次运行,启动成功