欢迎关注Hadoop、Spark、Flink、Hive、Hbase、Flume等大数据资料分享微信公共账号:iteblog_hadoop
  1. 文章总数:960
  2. 浏览总数:11,441,380
  3. 评论:3867
  4. 分类目录:102 个
  5. 注册用户数:5823
  6. 最后更新:2018年10月13日
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
iteblog_hadoop
大数据技术博客公众号bigdata_ai
大数据猿:
bigdata_ai

Hive安装与配置

  前提条件:安装好相应版本的Hadoop(可以参见《在Fedora上部署Hadoop2.2.0伪分布式平台》)、安装好JDK1.6或以上版本(可以参见《如何在Linux平台命令行环境下安装Java1.6》
  Hive的下载地址:http://archive.apache.org/dist/hive/,你可以选择你适合的版本去下载。本博客下载的Hive版本为0.8.0。你可以运行下面的命令去下载Hive,并解压:

[wyp@wyp Downloads]$ wget \
    http://archive.apache.org/dist/hive/hive-0.10.0/hive-0.10.0.tar.gz
[wyp@wyp Downloads]$ tar -zxvf hive-0.10.0.tar.gz

用wget下载的文件存放在你当前的路径,当前路径可以用pwd命令得到。解压完Hive之后,可以看到其目录的结构为:

[wyp@wyp Downloads]$ cd hive-0.10.0/
[wyp@wyp hive-0.8.0]$ ls -l
total 132
drwxr-xr-x.  3 wyp wyp  4096 Dec 13  2011 bin
drwxr-xr-x.  2 wyp wyp  4096 Oct 31 11:21 conf
drwxr-xr-x.  6 wyp wyp  4096 Oct 31 11:16 docs
drwxr-xr-x.  5 wyp wyp  4096 Dec 13  2011 examples
drwxr-xr-x.  4 wyp wyp  4096 Oct 31 11:16 lib
-rw-rw-r--.  1 wyp wyp 23208 Dec 13  2011 LICENSE
-rw-rw-r--.  1 wyp wyp   897 Dec 13  2011 NOTICE
-rw-rw-r--.  1 wyp wyp  4439 Dec 13  2011 README.txt
-rw-rw-r--.  1 wyp wyp 66301 Dec 13  2011 RELEASE_NOTES.txt
drwxr-xr-x.  4 wyp wyp  4096 Dec 13  2011 scripts
drwxrwxr-x. 27 wyp wyp  4096 Oct 31 11:16 src
[wyp@wyp hive-0.8.0]$ 

  现在我们需要配置Hive,这样才能够运行Hive。进入conf文件夹,并将hive-default.xml.template文件的内容复制到hive-site.xml文件中,操作如下:

[wyp@wyp hive-0.10.0]$ cd conf/
[wyp@wyp conf]$ cp hive-default.xml.template hive-site.xml

在hive-site.xml文件中替换掉以下配置为你电脑实际的配置,在我电脑配置如下:

<property>
  <name>hive.metastore.warehouse.dir</name>
  <value>/home/wyp/cloud/hive/warehouse</value>
  <description>location of default database for the warehouse</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost:3306/hive_hdp?characterEncoding=UTF-8
                    &createDatabaseIfNotExist=true</value>
  <description>JDBC connect string for a JDBC metastore</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
  <description>Driver class name for a JDBC metastore</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>root</value>
  <description>username to use against metastore database</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>123456</value>
  <description>password to use against metastore database</description>
</property>

  Hive将元数据存储在RDBMS中,比如MySQL、Derby中。Hive默认是用Derby数据库,这里我修改为MySQL(所以你要确保你电脑上面已经安装好了MySQL数据库),所以配置如上。我们需要mysql驱动jar包mysql-connector-java-5.1.22-bin.jar 拷贝到 $HIVE_HOME/lib/ 目录下。然后编辑/etc/profile文件,将Hive的home目录添加进去,操作如下:

[wyp@wyp conf]$ sudo vim /etc/profile


在里面添加以下语句,当然你得修改Hive的home路径为你自己的
export HIVE_HOME=/home/wyp/Downloads/hive-0.10.0
export PATH=$PATH:$HIVE_HOME/bin

最后让上面的修改生效,请运行下面的命令:

[wyp@wyp conf]$ source /etc/profile

现在可以试一下,hive是否安装好(需要启动Hadoop,否则不能运行成功!):

[wyp@wyp conf]$ hive
hive>

如果出现了上述情况,说明你的hive安装成功了!

本博客文章除特别声明,全部都是原创!
转载本文请加上:转载自过往记忆(https://www.iteblog.com/)
本文链接: 【Hive安装与配置】(https://www.iteblog.com/archives/807.html)
喜欢 (3)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!
(6)个小伙伴在吐槽
  1. 感谢楼主的分享,初学hive,我想知道用mysql保存metadata的好处是什么呢?
    doublespout2014-09-05 13:03 回复
  2. 最后执行hive错误为[Fatal Error] hive-site.xml:132:94: 对实体 "createDatabaseIfNotExist" 的引用必须以 ';' 分隔符结尾。14/08/30 17:45:03 FATAL conf.Configuration: error parsing conf file:/home/whh/soft/hive/conf/hive-site.xmlorg.xml.sax.SAXParseException; systemId: file:/home/whh/soft/hive/conf/hive-site.xml; lineNumber: 132; columnNumber: 94; 对实体 "createDatabaseIfNotExist" 的引用必须以 ';' 分隔符结尾。修改下面配置就okjdbc:mysql://localhost:3306/hive_hdp?characterEncoding=UTF-8&createDatabaseIfNotExist=true要修改为jdbc:mysql://localhost:3306/hive_hdp?characterEncoding=UTF-8&createDatabaseIfNotExist=true
    徐卓2014-08-30 17:37 回复
    • jdbc:mysql://localhost:3306/my_hive?characterEncoding=UTF-8&createDatabaseIfNotExist=true是这个要添加amp;
      徐卓2014-08-30 18:42 回复
    • jdbc:mysql://localhost:3306/my_hive?characterEncoding=UTF-8&createDatabaseIfNotExist=true是这个要添加amp;
      徐卓补充2014-08-30 18:43 回复