centos7上安装hive-2.1.1笔记

安装hive前须确保安装JDK及Hadoop和MySQL

    MySQL数据库须添加hive用户并授权

安装hive:

1.下载

http://archive.apache.org/dist/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz

2.上传至centos7 /root/app    (目录任意)

3.解压

    cd    /root/app    (进入文件上传的目录)

    tar -vxzf apache-hive-2.1.1-bin.tar.gz    (执行解压)

4.改名:

    mv apache-hive-2.1.1-bin hive-2.1.1    (非必须)

5.删除hive的tar包:

    rm -rf apache-hive-2.1.1-bin.tar.gz     (非必须)

6.配置环境变量

vi /etc/profile

export HIVE_HOME=/root/app/hive-2.1.1
export HIVE_CONF_DIR=${HIVE_HOME}/conf
export CLASSPATH=$CLASSPATH.:{HIVE_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${HIVE_HOME}/bin

/etc/profile文件编辑完成后,执行下面命令,让配置生效:

    source /etc/profile

7.对hive进行配置

    7.1: 进入到hive的配置文件目录:

        cd /root/app/hive-2.1.1/conf

    7.2: 将hive-default.xml.template文件复制一份,并且改名为hive-site.xml

        cp   hive-default.xml.template   hive-site.xml

    7.3: 使用hadoop新建hdfs目录

         因为在hive-site.xml中有这样的配置:

<property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/user/hive/warehouse</value>
</property>

<property>
    <name>hive.exec.scratchdir</name>
    <value>/tmp/hive</value>
</property>

 所以要让hadoop新建/user/hive/warehouse目录,执行命令:

            $HADOOP_HOME/bin/hadoop   fs   -mkdir   -p   /user/hive/warehouse

       给刚才新建的目录赋予读写权限,执行命令:

            $HADOOP_HOME/bin/hadoop   fs   -chmod   777   /user/hive/warehouse

        让hadoop新建/tmp/hive/目录,执行命令:

            $HADOOP_HOME/bin/hadoop   fs   -mkdir  -p   /tmp/hive/

        给刚才新建的目录赋予读写权限,执行命令:

            $HADOOP_HOME/bin/hadoop   fs   -chmod  777   /tmp/hive

     7.4修改hive-site.xml数据库相关的配置

        搜索javax.jdo.option.ConnectionURL,将该name对应的value修改为MySQL的地址,例如我修改后是:

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.188.128:3306/hive?characterEncoding=UTF-8&createDatabaseIfNotExist=true</value>
</property>

 搜索javax.jdo.option.ConnectionDriverName,将该name对应的value修改为MySQL驱动类路径,例如我的修改后是:

<property> 
    <name>javax.jdo.option.ConnectionDriverName</name> 
    <value>com.mysql.jdbc.Driver</value> 
</property>

 搜索javax.jdo.option.ConnectionUserName,将对应的value修改为MySQL数据库登录名:

<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
</property>

搜索javax.jdo.option.ConnectionPassword,将对应的value修改为MySQL数据库的登录密码:

<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
</property>​

搜索hive.metastore.schema.verification,将对应的value修改为false:

<property>
    <name>hive.metastore.schema.verification</name>
    <value>false</value>
</property>​

 将MySQL驱动包上传到Hive的lib目录下, 例如我是上载到/root/app/hive-2.1.1/lib目录下。

8.新建hive-env.sh文件并进行修改

    8.1进入到/opt/hive/apache-hive-2.1.1-bin/conf目录,命令是:

        cd /opt/hive/apache-hive-2.1.1-bin/conf

    8.2将hive-env.sh.template文件复制一份,并且改名为hive-env.sh,命令是:

        cp hive-env.sh.template hive-env.sh

    8.3打开hive-env.sh配置并且添加以下内容:

# Set HADOOP_HOME to point to a specific hadoop install directory
export HADOOP_HOME=/root/app/hadoop-2.7.3

# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/root/app/hive-2.1.1/conf

# Folder containing extra ibraries required for hive compilation/execution can be controlled by:
export HIVE_AUX_JARS_PATH=/root/app/hive-2.1.1/lib

 8.4进入到hive的bin目录 执行命令:

        cd /root/app/hive-2.1.1/bin

        对数据库进行初始化,执行命令:

        schematool   -initSchema  -dbType  mysql

 执行成功后,hive数据库里已经有一堆表创建好了

9.启动hive

    启动前确保Hadoop已启动:

  进入到hive的bin目录执行命令:

        cd   /root/app/hive-2.1.1/bin

    执行hive脚本进行启动,执行命令:

        ./hive

10.测试

    执行查看函数的命令:

        show  functions;

    执行查看sum函数的详细信息的命令:

        desc function  sum;

10.1执行新建表以及导入数据的测试

        10.1.1新建数据库

            执行新建数据库的hive命令:

              create database  test_db_hive;

 10.1.2创建数据表

在刚才创建的数据库中创建数据表,执行hive命令:

    use  test_hive_edu;

    create  table  student(id int,name string);

hadoop安装参考:

https://blog.csdn.net/chen_jx_0/article/details/85235981

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值