0


Hive的安装与配置——第1关:Hive的安装与配置

第1关:Hive的安装与配置


任务描述

本关任务:在已安装

Hadoop

的基础上安装配置好

Hive

并运行。

相关知识

为了完成本关任务,你需要掌握:

  1. Hive
    

    的基本安装;

  2. Mysql
    

    的安装与设置;

  3. Hive
    

    的配置。

注意:本关实训

Hive

的安装与配置建立在

Hadoop

已安装配置好的情况下。

Hive 的基本安装

从 官网 下载

Hive

二进制包,不过这里你无须再从网上下载,我已经帮你下载好了放在

/opt

目录下。

Mysql 的安装与设置

平台已安装

MySQL

数据库,同学们在本地没有安装可以采用以下命令进行安装:

sudo apt-get install mysql-server   #安装mysql服务apt-get install mysql-client        #安装mysql客户端sudo apt-get install libmysqlclient-dev  #安装相关依赖环境

注意:安装过程中会提示设置密码什么的,不要忘了设置。

安装完成之后可以使用如下命令来检查是否安装成功。

sudo netstat -tap | grep mysql

通过上述命令检查之后,如果看到有

MySQL

socket

处于

listen

状态则表示安装成功。

Hive

需要数据库来存储

metastore

的内容,因此我们需要配置一下

MySQL

数据库。

  • 下载mysql驱动;我已经帮你下载好放在/opt目录下,进入该目录并进行以下操作:tar -zxvf mysql-connector-java-5.1.45.tar.gzcd mysql-connector-java-5.1.45cp mysql-connector-java-5.1.45-bin.jar /opt/hive/lib/

接下来介绍

MySQL

Hive

做的设置。

  • 使用root用户登录MySQL数据库;mysql -uroot -p123123 -h127.0.0.1
  • 创建数据库实例hiveDBcreate database hiveDB;
  • 创建用户bee,密码为123123create user 'bee'@'%' identified by '123123';
  • 授权用户bee拥有数据库实例hiveDB的所有权限;grant all privileges on hiveDB.* to 'bee'@'%' identified by '123123';
  • 刷新系统权限表。flush privileges;
Hive 的配置

/opt/hive/conf

目录下,修改

hive-site.xml

hive-env.sh

两个文件。

hive-site.xml
hive-site.xml

保存

Hive

运行时所需要的相关配置信息。

  • 如果目录下没有该文件,我们直接创建一个:vi hive-site.xml,将以下内容复制到其中(按i进入编辑模式后再进行粘贴)。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- WARNING!!! This file is auto generated for documentation purposes ONLY! -->
<!-- WARNING!!! Any changes you make to this file will be ignored by Hive.   -->
<!-- WARNING!!! You must make your changes in hive-site.xml instead.         -->
<!-- Hive Execution Parameters -->
 <property>
 <name>hive.metastore.warehouse.dir</name>
 <value>/opt/hive/warehouse</value>
 </property>
 <property>
 <name>hive.exec.scratchdir</name>
 <value>/opt/hive/tmp</value>
 </property>
 <property>
 <name>hive.querylog.location</name>
 <value>/opt/hive/logs</value>
 </property>
 <property>
 <name>hive.server2.thrift.port</name>
 <value>10000</value>
 </property>
 <property>
 <name>hive.server2.thrift.bind.host</name>
 <value>localhost</value>
 </property>
 <property>
 <name>hive.server2.enable.doAs</name>
 <value>true</value>
 </property>
 <property>
 <name>hive.session.id</name>
 <value>false</value>
 </property>
 <property>
 <name>hive.session.silent</name>
 <value>false</value>
 </property>
 <property>
 <name>javax.jdo.option.ConnectionURL</name>
 <value>jdbc:mysql://localhost:3306/hiveDB?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>bee</value>
 <!-- 这里是之前设置的数据库 -->
 </property>
 <property>
 <name>javax.jdo.option.ConnectionPassword</name>
 <!-- 这里是数据库密码 -->
 <value>123123</value>
 </property>
</configuration>

完成后,在命令行模式(按

Esc

),输入

:wq

保存退出。

hive-env.sh

由于

Hive

是一个基于

Hadoop

分布式文件系统的数据仓库架构,主要运行在

Hadoop

分布式环境下,因此,需要在文件

hive-env.sh

中指定

Hadoop

相关配置文件的路径,用于

Hive

访问

HDFS

(读取

fs.defaultFS

属性值)和

MapReduce

(读取

mapreduce.jobhistory.address

属性值)等

Hadoop 

相关组件。

  • 如果目录下没有该文件,我们就以模板复制一个cp hive-env.sh.template hive-env.shvi hive-env.sh打开文件,在文件末尾添加变量指向 Hadoop 的安装路径:HADOOP_HOME=/usr/local/hadoop #在本地环境安装,要根据自己hadoop的路径来确定至此Hive配置完成。 第一次启动Hive前还需要执行初始化命令:schematool -dbType mysql -initSchema

编程要求

请仔细阅读左侧文档知识点,根据提示,在右侧命令行区域进行 Hive 环境搭建,具体任务如下:

  • 根据上述步骤完成Hive的安装与配置
  • 然后在命令行start-dfs.sh启动 Hadoop
  • 点击测评,验证hive是否成功安装配置。

测试说明

补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

通关标准:通过

Hive

可否查询到数据库来判断它是否安装配置成功。

注意:通过本关后,请继续完成第二关,第二关是在

Hive

配置成功的基础上进行的。若中间命令行连接中断,还需重新配置本关环境才能继续第二关。


开始你的任务吧,祝你成功!


root@evassh-13490582:~# tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz -C /opt/
root@evassh-13490582:~# mv /opt/apache-hive-3.1.0-bin /opt/hive
root@evassh-13490582:~# vim /root/.bashrc

i
export HIVE_HOME=/opt/hive
export path=$HIVE_HOME:$PATH

esc
:x

root@evassh-13490582:~# bash
root@evassh-13490582:~# tar zxvf /opt/mysql-connector-java-5.1.45.tar.gz -C /opt/
root@evassh-13490582:~# cp /opt/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar /opt/hive/lib/
root@evassh-13490582:~# mysql -uroot -p123123 -h127.0.0.1

mysql> create database hiveDB;
mysql> create user 'bee'@'%' identified by '123123';
mysql> grant all privileges on hiveDB.* to 'bee'@'%' identified by '123123';
mysql> flush privileges;
mysql> quit;

root@evassh-13490582:~# vim /opt/hive/conf/hive-site.xml

i

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- WARNING!!! This file is auto generated for documentation purposes ONLY! -->
<!-- WARNING!!! Any changes you make to this file will be ignored by Hive.   -->
<!-- WARNING!!! You must make your changes in hive-site.xml instead.         -->
<!-- Hive Execution Parameters -->
 <property>
 <name>hive.metastore.warehouse.dir</name>
 <value>/opt/hive/warehouse</value>
 </property>
 <property>
 <name>hive.exec.scratchdir</name>
 <value>/opt/hive/tmp</value>
 </property>
 <property>
 <name>hive.querylog.location</name>
 <value>/opt/hive/logs</value>
 </property>
 <property>
 <name>hive.server2.thrift.port</name>
 <value>10000</value>
 </property>
 <property>
 <name>hive.server2.thrift.bind.host</name>
 <value>localhost</value>
 </property>
 <property>
 <name>hive.server2.enable.doAs</name>
 <value>true</value>
 </property>
 <property>
 <name>hive.session.id</name>
 <value>false</value>
 </property>
 <property>
 <name>hive.session.silent</name>
 <value>false</value>
 </property>
 <property>
 <name>javax.jdo.option.ConnectionURL</name>
 <value>jdbc:mysql://localhost:3306/hiveDB?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>bee</value>
 <!-- 这里是之前设置的数据库 -->
 </property>
 <property>
 <name>javax.jdo.option.ConnectionPassword</name>
 <!-- 这里是数据库密码 -->
 <value>123123</value>
 </property>
</configuration>

esc
:x

root@evassh-13490582:~# cp /opt/hive/conf/hive-env.sh.template /opt/hive/conf/hive-env.sh
root@evassh-13490582:~# vim /opt/hive/conf/hive-env.sh

i
HADOOP_HOME=/usr/local/hadoop  #在本地环境安装,要根据自己hadoop的路径来确定

esc
:x

root@evassh-13490582:~# start-all.sh 
root@evassh-13490582:~# /opt/hive/bin/schematool -dbType mysql -initSchema

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ysxGddek-1666195111052)(D:\文件\大三上\大数据库\educoder_Hive的安装.png)]
在这里插入图片描述


下面是敲过的命令

    1  tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz
    2  ls
    3  tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz ./
    4  tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz .
    5  tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz -C ./
    6  ll /opt/
    7  la /opt/
    8  tar zxvf /opt/apache-hive-3.1.0-bin.tar.gz -C /opt/
    9  la /opt/
   10  mv /opt/apache-hive-3.1.0-bin /opt/hive
   11  la /opt/
   12  vim /root/.bashrc
   
       1  echo $HIVE_HOME/
    2  tar zxvf /opt/mysql-connector-java-5.1.45.tar.gz -C /opt/
    3  la /opt/
    4  cp /opt/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar /opt/hive/lib/
    5  mysql -uroot -p123123 -h127.0.0.1
    6  vim /opt/hive/conf/hive-site.xml
    7  cp /opt/hive/conf/hive-env.sh.template /opt/hive/conf/hive-env.sh
    8  vim /opt/hive/conf/hive-env.sh
    9  start-all.sh
标签: hive hadoop 大数据

本文转载自: https://blog.csdn.net/qq_51916951/article/details/127418513
版权归原作者 真题OK撒 所有, 如有侵权,请联系我们删除。

“Hive的安装与配置——第1关:Hive的安装与配置”的评论:

还没有评论