数据仓库hive本地模式安装

Posted 十里桃花笑春风️

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据仓库hive本地模式安装相关的知识,希望对你有一定的参考价值。

1.简述

hive的安装模式有三种:嵌入模式、本地模式以及远程模式。
嵌入模式:即使用hive自身内嵌的数据库Derby作为存储介质进行数据的存储。
本地模式:即使用外部数据库作为存储介质进行数据的存储
远程模式:与本地模式相似,不过其操作是先开一个Metastore服务,再用其他的客户端通过响应的配置去连接服务。
我们平常大多情况使用的是本地模式。所以这篇文章主要讲述hive本地模式的安装过程。

2.安装包准备

到相应网址下载mysql安装包,hive安装包,mysql驱动文件;mysql安装包下载链接hive安装包下载链接

利用xftp软件,将mysql安装包与hive安装包上传至linux系统的指定路径/export/software

3.解压安装mysql

3.1 解压mysql安装包

先在文件目录/export/servers下创建一个mysql文件夹,再进入mysql安装包所在文件夹/export/software,执行解压命令解压到指定文件目录/export/servers/mysql

3.2 安装mysql相关组件

再进入mysql文件目录,解压mysql相关组件,分别执行如下命令:

rpm -ivh mysql-community-server-5.7.12-1.el6.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.12-1.el6.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.12-1.el6.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-common-5.7.12-1.el6.x86_64.rpm --force --nodeps


3.3 修改my.cnf配置文件

执行命令vi /etc/my.cnf编辑my.cnf文档,向其中添加如下代码:

skip-grant-tables  #跳过登陆验证
user=root  #设置root为mysql用户
character_set_server=utf8  #设置mysql服务默认字符集utf8
init_connect='SET NAMES utf8'  #设置初次连接默认字符集utf8

编辑完,保存退出

3.4 启动mysql服务

执行命令systemctl start mysqld启动mysql服务器,也可以使用命令systemctl status mysqld查看服务器状态

执行命令mysql进入mysql交互式界面

这时mysql正使用%s选项运行,不能执行mysql语句,我们需要先执行命令flush privileges;刷新即可,再输入代码set password for root@localhost=password('你的密码(自己设置)');

执行命令grant all privileges on *.* to ‘root’@’%’ identified by ‘密码’ with grant option;赋予所有访问权限

退出输入命令quit;退出mysql交互式界面
再执行命令vi /etc/my.cnf对文档进行修改,注释跳过密码验证那行代码(“#”代表注释)

编辑完,保存退出即可,下次登录mysql即需要输入代码mysql -u用户名 -p来登录(用户名一般为root),回车输入密码(输入密码时不会显示,输完回车即可)

4.hive解压安装及配置

4.1 解压

将hive安装包解压到指定目录/export/servers

4.2 改名

由于解压后的文件名带有版本号,把文件名直接改为hive更简洁,方便后续的使用(执行改名命令前,需要进入hive解压包所在目录)

4.3 配置环境变量

执行命令vi /etc/profile编辑文档,向文档末尾添加如下代码:

export HIVE_HOME=/export/servers/hive
export PATH=$PATH:$HIVE_HOME/bin

修改完,保存退出,再执行命令source /etc/profile使环境变量生效

4.4 添加hive-site.xml配置文件

进入hive安装目录下的conf目录,执行命令vi hive-site.xml新建文件,并向其中添加如下内容:

<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriveName</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>mysql数据库密码</value>
  </property>
</configuration>

编辑完,保存退出(注意,内容里面的master指的是我自己的hadoop集群主节点,自己主机名是什么就写什么)

4.5 放置mysql驱动文件

到相应网址下载驱动文件:mysql驱动文件下载链接
通过xftp软件,将驱动文件上传至linux系统指定目录/export/servers/hive/lib下

4.6 启动hive

由于我们配置过hive的系统环境变量,所以在任何目录下都能直接输入命令hive启动hive(注意:由于hive底层应用的是MapReduce,且其存储介质为外界数据库mysql,所以在启动hive之前,要先启动hadoop集群,以及mysql服务)

输入命令show databases;可以查看数据库,从中可以看出有个默认的default数据库

我们在hive中创建的数据库存储在HDFS中的/user/hive/warehouse/路径下

5.附加

每次关闭虚拟机时,再重新打开虚拟机,执行命令systemctl start mysqld启动mysql服务时会出现以下报错:
Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details.

出现上述情况是因为虚拟机在关闭时,mysql服务相关控制进程出现错误,经过自己的学习,结合经验,提供一个解决方法:先进入指定目录/run,在这个目录下创建一个mysqld文件,再对此文件授权,这样就能 正常启动mysql服务了

5.结束语

至此,hive本地模式安装就结束了,大家在安装过程中遇到什么问题,可以提出来,我会尽自己所能去帮大家解决问题;大家能学到hive这里,相信大家对虚拟机的命令的使用已经非常熟练了,如果还不太熟练,可以借鉴学习这篇文章:haddoop集群的搭建(其中讲述了一些基本命令)

以上是关于数据仓库hive本地模式安装的主要内容,如果未能解决你的问题,请参考以下文章

Hive 2Hive 的安装配置(本地MySql模式)

HIVE 2.3.4 本地安装与部署 (Ubuntu)

Hive安装

Hive的三种安装模式简介及12步安装步骤详解

黑猴子的家:Hive 本地模式

hive2.1.1安装部署