Hive安装及问题解决

刚刚安装好Hadoop迫不及待要玩下hive,所以自己找了些资料,安装了下hive,这里记录详细的安装过程和碰到的问题:

1.在安装hadoop之前首先确定hadoop已经安装成功,具体安装方法请参考hadoop安装 见  与

2.下载hive版本 我下载的是  

下载地址为

解压文件:

tar -zxvf hive-0.7.0-bin.tar.gz  

3.配置环境变量:

[root@localhost hive]# vim /etc/profile  

export HADOOP_HOME=/root/hadoop-0.20.2   export PATH=$PATH:$HADOOP_HOME/bin      export HIVE_HOME=/usr/hive/hive-0.7.0-bin   PATH=$PATH:$HIVE_HOME/bin      export PATH   export JAVA_HOME=/usr/java/jdk1.7.0_01  


4.我存储元数据是采用第三方的mysql数据库,这种情况下需要下载一个数据包mysql-connector-java-5.1.18-bin.jar,放到hive的lib目录下

在hive的conf目录下创建文件hive-site.xml配置文件,代码如下:

<?xml version="1.0"?>   <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>      <configuration>   <property>   <name>hive.metastore.local</name>     <value>true</value>   </property>      <property>   <name>javax.jdo.option.ConnectionURL</name>     <value>jdbc:mysql://192.168.0.237:3306/metastore_db?createDatabaseIfNotExist=true</value>   </property>      <property>   <name>javax.jdo.option.ConnectionDriverName</name>     <value>com.mysql.jdbc.Driver</value>   </property>      <property>      <name>javax.jdo.option.ConnectionUserName</name>      <value>t237</value>    </property>         <property>      <name>javax.jdo.option.ConnectionPassword</name>      <value>123456</value>    </property>    <property>      <name>datanucleus.fixedDatastore</name>      <value>false</value>    </property>    </configuration>  

5.运行hive

[root@localhost conf]# hive   Hive history file=/tmp/root/hive_job_log_root_201112061510_1145168119.txt   hive> show tables;   OK   log   log_info   log_new   maptile   result   Time taken: 2.889 seconds   hive>   

6.这里遇到点问题:刚开始执行hive时,执行show tables;报如下错误:

FAILED: Hive Internal Error: java.lang.RuntimeException(Error while making MR scratch directory - check filesystem config (null))   java.lang.RuntimeException: Error while making MR scratch directory - check filesystem config (null)  

后来询问了google,得到如下解决办法:

原有的hadoop配置文件core-site.xml信息如下:

<pre name="code" class="plain"><!-- Put site-specific property overrides in this file. -->      <configuration>   <property>       <name>hadoop.tmp.dir</name>       <value>/hadoop-root/tmp</value>   </property>   <property>         <name>fs.default.name</name>         <value>hdfs://192.168.30.149:9000/</value>   </property>   </configuration>  


改成:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/pspwd.html