1.安装hadoop

2.从maven中下载mysql-connector-java-5.1.26-bin.jar(或其他jar版本)放在hive目录下的lib文件夹

3.配置hive环境变量,HIVE_HOME=F:\hadoop\apache-hive-2.1.1-bin

4.hive配置

hive的配置文件放在$HIVE_HOME/conf下,里面有4个默认的配置文件模板

hive-default.xml.template                           默认模板

hive-env.sh.template                hive-env.sh默认配置

hive-exec-log4j.properties.template    exec默认配置

hive-log4j.properties.template               log默认配置

可不做任何修改hive也能运行,默认的配置元数据是存放在Derby数据库里面的,大多数人都不怎么熟悉,我们得改用mysql来存储我们的元数据,以及修改数据存放位置和日志存放位置等使得我们必须配置自己的环境,下面介绍如何配置。

(1)创建配置文件

$HIVE_HOME/conf/hive-default.xml.template  -> $HIVE_HOME/conf/hive-site.xml

$HIVE_HOME/conf/hive-env.sh.template  -> $HIVE_HOME/conf/hive-env.sh

$HIVE_HOME/conf/hive-exec-log4j.properties.template ->  $HIVE_HOME/conf/hive-exec-log4j.properties

$HIVE_HOME/conf/hive-log4j.properties.template  -> $HIVE_HOME/conf/hive-log4j.properties

(2)修改 hive-env.sh

export HADOOP_HOME=F:\hadoop\hadoop-2.7.2
export HIVE_CONF_DIR=F:\hadoop\apache-hive-2.1.1-bin\conf
export HIVE_AUX_JARS_PATH=F:\hadoop\apache-hive-2.1.1-bin\lib

(3)修改 hive-site.xml

  <!--修改的配置-->  

 <property>  

 <name>hive.metastore.warehouse.dir</name>  

 <!--hive的数据存储目录,指定的位置在hdfs上的目录-->  

 <value>/user/hive/warehouse</value>  

 <description>location of default database for the warehouse</description>  

 </property>  

 <property>  

 <name>hive.exec.scratchdir</name>  

 <!--hive的临时数据目录,指定的位置在hdfs上的目录-->  

 <value>/tmp/hive</value>  

 <description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/<username> is created, with ${hive.scratch.dir.permission}.</description>  

 </property>  

 <property>  

 <name>hive.exec.local.scratchdir</name>  

 <!--本地目录-->  

 <value>F:/hadoop/apache-hive-2.1.1-bin/hive/iotmp</value>  

 <description>Local scratch space for Hive jobs</description>  

 </property>  

 <property>  

 <name>hive.downloaded.resources.dir</name>  

 <!--本地目录-->  

 <value>F:/hadoop/apache-hive-2.1.1-bin/hive/iotmp</value>  

 <description>Temporary local directory for added resources in the remote file system.</description>  

 </property>  

 <property>  

 <name>hive.querylog.location</name>  

 <!--本地目录-->  

 <value>F:/hadoop/apache-hive-2.1.1-bin/hive/iotmp</value>  

 <description>Location of Hive run time structured log file</description>  

 </property>  

 <property>  

 <name>hive.server2.logging.operation.log.location</name>  

 <value>F:/hadoop/apache-hive-2.1.1-bin/hive/iotmp/operation_logs</value>  

 <description>Top level directory where operation logs are stored if logging functionality is enabled</description>  

 </property>  

 <!--新增的配置-->  

 <property>  

 <name>javax.jdo.option.ConnectionURL</name>  

 <value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8</value>  

 </property>  

 <property>  

 <name>javax.jdo.option.ConnectionDriverName</name>  

 <value>com.mysql.jdbc.Driver</value>  

 </property>  

 <property>  

 <name>javax.jdo.option.ConnectionUserName</name>  

 <value>root</value>  

 </property>  

 <property>  

 <name>javax.jdo.option.ConnectionPassword</name>  

 <value>root</value>  

 </property>  

 <!-- 解决 Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"  -->  

 <property>  

 <name>datanucleus.autoCreateSchema</name>  

 <value>true</value>  

 </property>  

 <property>  

 <name>datanucleus.autoCreateTables</name>  

 <value>true</value>  

 </property>  

 <property>  

 <name>datanucleus.autoCreateColumns</name>  

 <value>true</value>  

 </property>  

 <!-- 解决 Caused by: MetaException(message:Version information not found in metastore. )  -->  

 <property>    

 <name>hive.metastore.schema.verification</name>    

 <value>false</value>    

 <description>    

     Enforce metastore schema version consistency.    

     True: Verify that version information stored in metastore matches with one from Hive jars.  Also disable automatic    

           schema migration attempt. Users are required to manully migrate schema after Hive upgrade which ensures    

           proper metastore schema migration. (Default)    

     False: Warn if the version information stored in metastore doesn't match with one from in Hive jars.    

 </description>    

 </property>   

注:需要事先在hadoop上创建hdfs目录

(4)日志文件配置 略

5.MySQL设置

(1)创建hive数据库: create database hive default character set latin1;

(2)grant all on hive.* to hive@'localhost'  identified by 'hive';

flush privileges;

--本人用的是root用户,所以这步省略

6.
(1)启动hadoop:start-all.cmd
(2)启动metastore服务:hive --service metastore
(3)启动Hive:hive
 若Hive成功启动,Hive本地模式安装完成。

7、查看mysql数据库
use hive; show tables;

8.在hive下建一张表:CREATE TABLE xp(id INT,name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';

9.在MySQL中查看:select * from TBLS

安装过程中遇到的问题

(1)hive启动时报错Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations 
参考 http://宋亚飞.中国/post/98 
(2)Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
参考http://blog.csdn.net/freedomboy319/article/details/44828337
(3)Caused by: MetaException(message:Version information not found in metastore. )
参考 http://blog.csdn.net/youngqj/article/details/19987727
(4)Hive 创建表报"Specified key was too long; max key length is 767 bytes" 错误
参考 http://blog.csdn.net/niityzu/article/details/46606581

其他参考文章:
http://www.cnblogs.com/hbwxcw/p/5960551.html hive-1.2.1安装步骤
http://blog.csdn.net/jdplus/article/details/46493553 Hive本地模式安装及遇到的问题和解决方案
http://www.coin163.com/it/x8681464370981050716/spark-Hive CentOS7伪分布式下 hive安装过程中遇到的问题及解决办法
http://www.bogotobogo.com/Hadoop/BigData_hadoop_Hive_Install_On_Ubuntu_16_04.php APACHE HADOOP : HIVE 2.1.0 INSTALL ON UBUNTU 16.04

Hive安装-windows(转载)的更多相关文章

  1. Hive安装与部署集成mysql

    前提条件: 1.一台配置好hadoop环境的虚拟机.hadoop环境搭建教程:稍后补充 2.存在hadoop账户.不存在的可以新建hadoop账户安装配置hadoop. 安装教程: 一.Mysql安装 ...

  2. 如何在CentOS 5.x 中安装Windows Azure Linux Agent (WALA)

    Qing Liu  Tue, Mar 10 2015 3:06 AM 在今天的这一个章节中,我们主要讨论在CentOs 5.x 中如何安装Windows Azure Linux Agent 2.11 ...

  3. Hive安装与配置详解

    既然是详解,那么我们就不能只知道怎么安装hive了,下面从hive的基本说起,如果你了解了,那么请直接移步安装与配置 hive是什么 hive安装和配置 hive的测试 hive 这里简单说明一下,好 ...

  4. 关于vmware 11.1安装windows 7操作系统时报错 Unist specified don’t exist. SHSUCDX can’t install

    笔者今天在vmware 11.1 虚拟机下使用光驱安装windows 7 32位操作系统时,报错: Unist specified don’t exist. SHSUCDX can’t install ...

  5. MacBook使用笔记2 - 安装windows虚拟机攻略

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5498878.html 5月初从阿里滚粗,然后失去了公司发的Mac Air.说实话Mac机器确实比windows好用一 ...

  6. Java之.jdk安装-Windows

    jdk安装-windows 1. window + r,然后输入:cmd,打开黑窗口. 2. 分别输入 java -version .javac -version,检查jdk版本信息. 如果javac ...

  7. 大数据系列之数据仓库Hive安装

    Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...

  8. 雷林鹏分享:Ruby 安装 - Windows

    Ruby 安装 - Windows 下面列出了在 Windows 机器上安装 Ruby 的步骤. 注意:在安装时,您可能有不同的可用版本. 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 R ...

  9. Scrapy的安装--------Windows、linux、mac等操作平台

    Scrapy安装 Scrapy的安装有多种方式,它支持Python2.7版本及以上或者是Python3.3版本及以上.下面来说py3环境下,scrapy的安装过程. Scrapy依赖的库比较多,至少需 ...

随机推荐

  1. windows下的mysql迁移到linux下

    最近做毕业设计,需要把windows下的mysql移植到linux下 曾经有过在window下移植mysql数据库的经验,只需要把msql的数据文件复制到另一台安装mysql的机器的数据存放位置,然后 ...

  2. android 使用动画 Button移动后不响应点击事件的解决办法

    animation3.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimatio ...

  3. Mac - 关闭隐藏文件显示(Terminal)

    打开终端Terminal,输入:defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件defaults write ...

  4. Mybatis的WHERE和IF动态

    mapper.xml: <!--查询套餐产品 --> <select id="queryComboProducts" resultType="com.r ...

  5. python 定义类 学习2

    构造函数的变量 也叫做 实例变量 class role(): # 传参数 def __init__(self,name,role,weapon,life_value=100,moneny=15000) ...

  6. 邮件服务器Postfix的管理 重启php-fpm

    Postfix邮件系统安装与配置:Postfix,Cyrus-IMAP,Cyrus-sasl,Dovecot和SPFhttp://www.freehao123.com/postfix-cyrus/Ce ...

  7. java, android的aes等加密库

    https://github.com/scottyab/AESCrypt-Android https://github.com/PDDStudio/EncryptedPreferences       ...

  8. hdfs HA原理

    早期的hadoop版本,NN是HDFS集群的单点故障点,每一个集群只有一个NN,如果这个机器或进程不可用,整个集群就无法使用.为了解决这个问题,出现了一堆针对HDFS HA的解决方案(如:Linux ...

  9. SpringData_Repository接口概述

    Repository 接口是 Spring Data 的一个核心接口,它不提供任何方法,开发者需要在自己定义的接口中声明需要的方法  public interface Repository<T, ...

  10. CNN学习笔记:批标准化

    CNN学习笔记:批标准化 Batch Normalization Batch Normalization, 批标准化, 是将分散的数据统一的一种做法, 也是优化神经网络的一种方法. 在神经网络的训练过 ...