hive安装与配置

配置前必看

本帖的主要目的是用最平实的语言描述配置的进程,同时在每个章节为可能涉及的知识点提供相应的网站以供读者学习。最重要的还是给我自己留个配置的日记。这样Linux玩崩了也能找到回家的路。

  1. 本帖主要涉及的目录一共有三个,如有需要,在根目录/下创建export目录存放以下三个目录(建议)。(解压目录)servers、(软件安装目录)software、(数据/日志目录)data
  2. 本帖基于jdk1.8.0_181hadoop-2.7.5mysql-5.7.21配置,因此配置本帖软件请先安装配置好前置软件
  3. 如若配置中报错,请第一时间查看前置软件是否正确安装配置并正常运行其次查看是否兼容性问题。

安装hive

  1. 将hive上传到Linux目录
  2. 然后在hive压缩包的目录下将它解压到 /export/servers
    1
    tar -zxvf hive-2.1.0-bin.tar.gz -C /export/servers
  3. 解压成功之后需要对文件赋予权限
    1
    sudo chmod -R 777 /export

配置环境变量

1
vim ~/.bashrc
  1. 把以下内容复制进去保存退出
    1
    2
    3
    4
    export HIVE_HOME=/export/servers/hive-2.1.0
    export HCAT_HOME=$HIVE_HOME/hcatalog
    export HIVE_CONF=$HIVE_HOME/conf
    export PATH=$PATH:$HIVE_HOME/bin
  2. 刷新配置
    1
    source ~/.bashrc

修改配置文件

以下操作默认是再hive安装目录/export/servers/hive-2.1.0下进行

  1. 进入conf目录执行语句
    1
    sudo vim hive-site.xml
  2. 修改vim hive-site.xml中的部分内容,将对应的name修改成下面的value
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8&amp;createDatabaseIfNotExist=true</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>
    </configuration>
    image-20220705204600772

安装并配置MySQL环境

  1. 下载mysql-jdbc包,然后执行以下操作
    1
    cp mysql-connector-java-5.1.46-bin.jar /export/servers/hive-2.1.0/lib/
    image-20220705160556386
  2. 启动并登陆mysql shell
    1
    2
    systemctl start mysqld   #启动mysql服务
    mysql -u root -p #登陆shell界面
  3. 配置mysql允许hive接入
    1
    grant all privileges on *.* to 'root'@'localhost' identified by 'root';
    image-20220705204635718
    将所有数据库的所有表的所有权限赋给hive用户,后面的hive是配置hive-site.xml中配置的连接密码
  4. 新建hive数据库
    1
    create database hive;  
    image-20220705160850888
    这个hive数据库与hive-site.xml中localhost:3306/hive的hive对应,用来保存hive元数据
  5. 初始化数据库
    1
    schematool -dbType mysql -initSchema
    image-20220705161003834

启动

  1. 先启动hadoop集群
    1
    start-all.sh
    image-20220705204856902
  2. 然后启动hive
    1
    hive
    image-20220705204830416