登录 |  注册
首页 >  云计算&大数据 >  Hive数据仓库 >  Hive安装与启动、环境变量配置

Hive安装与启动、环境变量配置

一、准备工作

搭建hadoop伪分布式环境;见 hadoop伪分布式搭建

下载hive安装包;下载路径 http://archive.apache.org/dist/hive/

二、设置环境变量

将安装包解压到/opt目录下

$ tar xvzf apache-hive-0.13.0-bin.tar.gz

设置环境变量

在/etc/profile中添加

export HIVE_HOME=/opt/hive-0.13.1
export PATH=$PATH:$HIVE_HOME/bin

运行指令:source /etc/profile使配置文件生效

三、配置hive

    只需配置hive-env.sh

    $ cd $HIVE_HOME/conf
    $ cp hive-env.sh.template hive-env.sh

    编辑hive-env.sh

hive1.jpg

    输入HADOOP_HOME=/opt/hadoop-2.7.3,保存退出。

四、在hdfs中创建hive使用的文件夹

    需要创建在hdfs中创建/tmp和/user/hive/warehouse文件夹给hive单独使用,并给这些文件夹写权限。

$ hadoop fs -mkdir /tmp 
$ hadoop fs -mkdir -p /user/hive/warehouse 
$ hadoop fs -chmod g+w /tmp 
$ hadoop fs -chmod g+w /user/hive/warehouse

五、启动hive

    $ hive
    $ show databases;

六、安装mysql来存储hive的元数据

    hive的元数据需要数据库来存储,第四步结束是使用自带的derby数据库来存储元数据。这种情况有个限制,即同时只能有一个hive客户端使用数据库,否则会报错。使用MySQL数据库可解决这个限制。下面介绍安装MySQL数据库及配置方法。

安装mysql5.6.x以上的包

安装完后修改root密码

set password=password('123456')
# 查询用户信息
mysql>select User,Host,Password from user;
# 更新用户信息        
mysql> update user set Host='%' where User = 'root' and Host='localhost' ;
# 删除其他用户信息(不删除有影响)
mysql> delete from user where user='root' and host='127.0.0.1';
# 刷新信息
mysql> flush privileges;

2. 拷贝MySQL驱动jar包到Hive安装目录下的lib文件夹中

    $ cp mysql-connector-java-5.1.27-bin.jar /opt/hive-0.13.1/lib/

3.修改hive配置文件

编辑hive-site.xml文件,并添加以下信息,检查一下hive-site.xml有没有配好jdbc:

<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/hive?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>root</value>
        <description>password to use against metastore database</description>
    </property>
</configuration>

配置完成,启动hive即可

hive启动常见报错>>


小结:

hive是基于hadoop的数据仓工具,能提供类SQL的查询语句,其本质是将HQL语句转换为MapReduce程序。本文记录hive环境搭建过程,为后续学习HQL语句做基础。

<<上一课程
下一课程>>
推荐文章
  • Raft协议分区容忍的一致性协议的核心思想:一致性的保证不一定非要所有节点都保持一致,只要大多数节点更新了,对于整个分布式系统来说数据也是一致性的。Raft协议将概念分解成:Leaderelection、Logreplication、Safety。Raft把一致性协议划分为Leader选举、Memb
  • Paxos、Raft分布式一致性算法应用场景一文讲述了分布式一致性问题与分布式一致性算法的典型应用场景。作为分布式一致性代名词的Paxos算法号称是最难理解的算法。本文试图用通俗易懂的语言讲述Paxos算法。 Paxos算法简介Paxos算法是1990年LeslieLamport在论文《ThePar
  • 一、准备工作搭建hadoop伪分布式环境;见hadoop伪分布式搭建下载hive安装包;下载路径http://archive.apache.org/dist/hive/二、设置环境变量将安装包解压到/opt目录下$ tar xvzf apache-hive-0.13.0-bin.tar.gz设置环境
  • 什么是Hive?Hive是基于Hadoop的一个数据仓库工具,可以将HDFS中结构化的数据文件映射为一张表,并提供类SQL查询功能,本质是将HQL转化为mapreduce程序。mapreduce理解mapreduce数据以一条记录为单位经过map方法映射成KV,相同的key为一组,这一组数据用一次r
  • Docker使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器。Docker容器通过Docker镜像来创建。容器与镜像的关系相似于面向对象编程中的对象与类。Docker总
  • Docker是什么?Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行
学习大纲