Hive安装与配置

Hive 的基本安装

 官网  下载Hive二进制包:Index of /hive (apache.org)

  • 上传到 /usr目录中
  • 进入/usr目录,解压apache-hive-2.3.1-bin.tar.gz到该目录下,并将解压的文件重命名为hive
  • cd /usr
    tar -zxvf apache-hive-2.3.1-bin.tar.gz
    mv apache-hive-2.3.1-bin hive
  • 设置环境变量,编辑vim /etc/profile,在末尾添加以下两行代码;
export HIVE_HOME=/opt/hive
export PATH=.:$HIVE_HOME/bin:$PATH

source /etc/profile使环境生效

查看hive是否安装成功:hive --version

  • 出现hive版本就说明安装成功,但是可以看到其中有一些警告信息,是由于包的冲突引起的。我们只需删除掉引起冲突的包即可:rm /opt/hive/lib/log4j-slf4j-impl-2.10.0.jar 

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

通过上述命令检查之后,如果看到有MySQLsocket处于listen 状态则表示安装成功。

Hive需要数据库来存储metastore的内容,因此我们需要配置一下MySQL数据库。

  • 下载mysql驱动

进入/usr该目录并进行以下操作:

tar -zxvf mysql-connector-java-5.1.45.tar.gz
cd mysql-connector-java-5.1.45
cp mysql-connector-java-5.1.45-bin.jar /usr/hive/lib/

接下来介绍MySQLHive做的设置。

使用root用户登录MySQL数据库;

mysql -uroot -proot //自己的用户名和密码

创建数据库实例hiveDB

create database hiveDB;

 创建用户bee,密码为123123

create user 'bee'@'%' identified by '123123';

 授权用户bee拥有数据库实例hiveDB的所有权限;grant all privileges on hiveDB.* to 'bee'@'%' identified by '123123';

假如上面这条代码不行,可以先设置加强密码强度和密码长度

set global validate_password_policy=LOW    //设置密码强度

set global validate_password_length=6       //设置密码长度

刷新系统权限表;

flush privileges;

Hive 的配置

/usr/hive/conf目录下,修改hive-site.xmlhive-env.sh两个文件。

hive-site.xml

hive-site.xml保存Hive运行时所需要的相关配置信息。

如果目录下没有该文件,我们直接创建一个:vim 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.sh

vi hive-env.sh打开文件,在文件末尾添加变量指向 Hadoop 的安装路径:

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

至此Hive配置完成。 第一次启动Hive前还需要执行初始化命令:

schematool -dbType mysql -initSchema

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徙格~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值