I have Hadoop 1.0.4 running on a single node cluster set up on my Ubuntu machine.
I did the following steps to download and install the hive release
> svn co http://svn.apache.org/repos/asf/hive/trunk hive
> cd hive
My hadoop install folder is $HADOOP_HOME/hive and $HADOOP_HOME=/usr/local/hadoop. I set both the environment variables in .bashrc under /home/hduser which is my Hadoop user and the $JAVA_HOME as well.
export HADOOP_HOME=/usr/local/hadoop
export HIVE_HOME=$HADOOP_HOME/hive
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk
I have also added the bin folder of both hadoop and hive in my $PATH variable as follows
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$HIVE_HOME/bin:$PATH
But while running hive from CLI, I am getting the below error.
hduser@somnath-laptop:/usr/local/hadoop/hive$ bin/hive
Missing Hive Execution Jar: /usr/local/hadoop/hive/lib/hive-exec-*.jar
Should I download this jar and add it to the /lib/ or is there some hive-specific environment variables that I need to configure. Any suggestion would be very helpful.
I resolved the problem myself but not sure what exactly happened.
By following the process I mentioned in my original question, I created the $HADOOP_HOME/hive but it was giving me a missing jar error.
So, what I did was: I downloaded hive-0.10.0.tar.gz and extracted it under $HADOOP_HOME. So the newly created folder was $HADOOP_HOME/hive-0.10.0.
I copied the entire lot of jars under $HADOOP_HOME/hive-0.10.0/lib to $HADOOP_HOME/hive/lib and when I executed next,
$HADOOP_HOME/hive> bin/hive
It worked! Please note my $HIVE_HOME=$HADOOP_HOME/hive and $HIVE_HOME/bin is added to path. Hope this helps somebody facing similar problem.
以我为例,在设置PATH变量后,进行一次简单的重新引导很有帮助。
i have the same issue,and i use the command "source ~/.bashrc"
problem resolved!
Try this :
export HIVE_HOME=$HADOOP_HOME/hive/build/dist
export PATH=$HIVE_HOME/bin:$PATH
The tar file apache-hive-0.13.1-src.tar.gz has a missing lib folder You can download hive-0.12.0.tar.gz and move the lib folder to apache-hive-0.13.1-src folder. Now hive should be working.
Just find your hive-exec-*.jar folder and create a symbolic link to it.
in my case, first i go to hive folder using "cd /usr/local/Cellar/hive/1.2.1"
and then run command "ln -s libexec/lib/ lib"
Just want to post what worked for me (in 2017).
Using Spark 2.0.2, I had to change my $HIVE_HOME
variable (which in my case, constituted me just removing the variable from my .bash_profile
.
Hope this helps someone else.
Here is another post for what worked for me in 2017.
This issue happened to me because of the way I (a beginner) extracted the Hive tar file. I downloaded "hive-2.3.0" from us.apache.org and extracted the file to /usr/local/hive. The jar was expected to be in /usr/local/hive/lib but for some reasons it was in /usr/local/hive**/bin/**lib. In other words, there was an extra "/bin" directory under /hive which contained all of the files that should have been directly under /hive. I fixed this problem by renaming the extra /bin directory to "/bin2," moving all the files from within /bin2 to the main /hive directory, and removing the unnecessary and now empty /bin2 directory. Once the .jar file was in the correct directory, there were no problems running Hive! Here are the commands I used:
cd /usr/local
mv hive/bin hive/bin2
mv hive/bin2/* hive
rm -r hive/bin2
I did below in Dec 2017 and it worked.
Did below in cygwin:
export HIVE_HOME=$HADOOP_HOME/hive export PATH=$HIVE_HOME/bin:$PATH
The question is about that the hive path, So you can check up all configuration file involving the hive path. Remember that you must confirm that the hadoop had been installed.
1, the environment parameter(/etc/profile or ~/.profile)
export HIVE_HOME=/usr/app/apache-hive-2.3.0-bin
export PATH=$HIVE_HOME/bin:$PATH
2, $HIVE_HOME/conf/hive-env.sh
export JAVA_HOME= ${Your_JAVA_HOME_directory}
export HADOOP_HOME= ${Your_HADOOP_HOME_directory}
export HIVE_HOME= ${Your_HIVE_HOME_directory}
export HIVE_CONF_DIR= ${Your_HIVE_HOME_directory}/conf
Hive is based on Hadoop, so you must configure the hadoop's path on the hive-env.sh.
Try cross checking your environment variable path, in case you typed it wrong.
Try Reloading .bashrc by typing following command
source ~/.bashrc
2021 - Had a similar issue because of misconfigured $HIVE_HOME env variable
Specifically I had:
$HIVE_HOME="/usr/local/hadoop/hive/ bin "
So hive was looking for lib/hive-exec- .jar in $HIVE_HOME/lib/hive-exec- .jar which is wrong
Working configuration is therefore:
$HIVE_HOME="/usr/local/hadoop/hive" # Or wherever you hive is installed
export PATH=${HIVE_HOME}/bin:${PATH}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.