hadoop-2.10.0安装hive-2.3.6

公司建立数仓,hive是必不可少的,hive是建立在hadoop基础上的数据库,前面已经搭建起了hadoop高可用,要学习hive,先从搭建开始,下面梳理一下hive搭建过程

1.下载hive安装包 ,下载地址:https://hive.apache.org/downloads.html 

找到自己hadoop对应的版本下载安装,我这里下载的是 apache-hive-2.3.6-bin.tar.gz

2.安装hive,将安装包解压到/opt/soft下,并建立软链接

tar -zxvf apache-hive-2.3.6-bin.tar.gz -C /opt/soft/
cd /opt/soft
mv apache-hive-2.3.6-bin hive-2.3.6
ln -s hive-2.3.6 hive

3.配置环境变量/etc/profile

vim /etc/profile

#hive export HIVE_HOME
=/opt/soft/hive export PATH=$PATH:$HIVE_HOME/bin

保存后别忘记编译一下

source /etc/profile

4.配置hive配置文件,hive元数据默认存储到derby数据库中,我们这里使用mysql来存储,hive-site.xml配置信息较多建议下载到windows下修改,然后再传上去

首先复制默认的配置文件模板,里面已经包含hive所有的默认配置信息

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

修改hive-site.xml配置文件,将元数据存放数据库改为mysql,在hive-site.xml中找到下列属性,修改为:


    javax.jdo.option.ConnectionDriverName
    com.mysql.jdbc.Driver
    Driver class name for a JDBC metastore
  
  
    javax.jdo.option.ConnectionURL
    jdbc:mysql://192.168.118.1:3306/hive2
    
      JDBC connect string for a JDBC metastore.
      To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL.
      For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
    
  
  
    javax.jdo.option.ConnectionUserName
    root
    Username to use against metastore database
  
  
    javax.jdo.option.ConnectionPassword
    111111
    password to use against metastore database
  

数据库驱动为mysql驱动com.mysql.jdbc.Driver,URL改为mysql的hive2(自定义)数据库,用户名密码为自己数据库对应的用户名密码

修改hive配置的一些目录,指定到自己选择的目录,搜索以 ${system 开头的 value 替换为自己的目录,我这里替换为:/home/hdfs/hive下相关目录

  
    hive.exec.local.scratchdir
    /home/hdfs/hive
    Local scratch space for Hive jobs
  

    hive.downloaded.resources.dir
    /home/hdfs/hive/downloads
    Temporary local directory for added resources in the remote file system.
  
  
    hive.querylog.location
    /home/hdfs/hive/querylog
    Location of Hive run time structured log file
  
  
    hive.server2.logging.operation.log.location
    /home/hdfs/hive/server2_logs
    Top level directory where operation logs are stored if logging functionality is enabled
  

修改权限验证为false

 
    hive.server2.enable.doAs
    false
    
      Setting this property to true will have HiveServer2 execute
      Hive operations as the user making the calls to it.
    
  

5.既然修改元数据存放在mysql库里,就需要将mysql驱动包放入到hive/lib中,注意mysql版本和驱动包一致

mv mysql-connector-java-8.0.18.jar /opt/soft/hive/lib/

6.在mysql数据库中创建hive2库

hadoop-2.10.0安装hive-2.3.6_第1张图片

7.初始化hive的元数据(表结构)到mysql中。

cd /opt/soft/hive/bin
schematool -dbType mysql -initSchema

出现如下信息,代表成功

hadoop-2.10.0安装hive-2.3.6_第2张图片

 

也可以查看mysql中hive2库,所有表初始化完成

hadoop-2.10.0安装hive-2.3.6_第3张图片

 

 

8.启动hadoop,如果没有安装可以参考:centos7搭建hadoop2.10高可用(HA)

start-all.sh

9.启动hive

hive

hadoop-2.10.0安装hive-2.3.6_第4张图片

 

 查看目前只有default数据库

创建数据库:

create database myhivedb2;

hadoop-2.10.0安装hive-2.3.6_第5张图片

 

 查看创建的mysqhivedb2已经出来了

我们查一下hdfs中是否创建了对应的目录

hdfs dfs -ls -R /user/hive/

 

 也可以查看mysql中hive2库的dbs表:

hadoop-2.10.0安装hive-2.3.6_第6张图片

 

 至此hive环境搭建完成

 

你可能感兴趣的:(hadoop-2.10.0安装hive-2.3.6)