Hive的安装
前言
hive的安装模式主要有三种,其分别是嵌入模式、本地模式、和远程模式。首先简单的介绍一下这三种模式。
(1)嵌入模式:使用内嵌Derby数据库存储元数据,这是Hive的默认安装方式,配置简单,但是一次只能连接一个客户端,适合用来测试,不适合生产环境。
(2)本地模式:采用外部数据库存储元数据,该模式不需要单独开启Metastore服务,因为本地模式使用的是和Hive在同一个进程中的Metastore服务。
(3)远程模式:与本地模式一样,远程模式也是采用外部数据库存储元数据。不同的是,远程模式需要单独开启Metastore服务,然后每个客户端都在配置文件中配置连接该Metastore服务。远程模式中,Metastore服务和Hive运行在不同的进程中。
一、hive安装之嵌入模式
首先在Apache镜像网站下载linux下的hive安装包(此处使用3.1.0版本的),下载地址
下载完成解压Hive安装包,将压缩包解压至/export/servers文件夹下。命令如下:
$ tar -zxvf apache-hive-3.1.0-bin.tar.gz -C /export/servers
在嵌入模式下执行Hive程序,无需对Hive配置文件进行修改,只要启动bin目录下的Hive程序即可。
!在启动hive之前要先启动hadoop集群,关闭linux安全机制,否则就会出现
java.net.ConnectException:拒绝连接。
$ bin/hive
启动成功就进入到hive的交互式界面
'>hive
进入交互式界面后,可以输入 show databases 指令查看当前所有数据库列表。
二、本地模式和远程模式
本地和远程模式安装配置方式大致相同,本质上是将Hive默认的元数据存储介质由自带的Derby数据库替换为MySQL数据库。
1.安装Mysql服务
安装Mysql的方式有很多。在此处我们选择的是在线安装Mysql服务。具体命令如下:
//下载Mysql
$ yum install mysql mysql-server mysql-devel
//启动Mysql服务
$ /etc/init.d/mysqld start
//Mysql连接并登录Mysql服务
$ mysql
安装完了mysql之后,我们进入到mysql的交互式界面。分别对mysql数据库密码进行修改,并设置允许远程登录。
//修改登录mysql的用户名和密码
mysql>USE mysql;
mysql>UPDATE user SET Password=PASSWORD('123456') WHERE user='root';
//设置允许远程登录
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'% ' IDENTIFIED BY '123456' WITH GRANT OPTION;
//强制写入
mysql>FLUSH PRIVILEGES;
2.Hive的配置
(1)修改hive-env.sh配置文件,配置Hadoop的配置文件
进入Hive安装包下的conf文件夹,复制hive-env.sh.template文件并重命名为hive-env.sh,命令如下
$ cd /export/servers/apache-hive-1.2.1-bin/conf
$ cp hive-env.sh.template hive-env.sh
然后修改hive-env.sh配置文件,添加Hadoop的环境配置文件。
export HADOOP_HOME=/export/servers/hadoop-2.7.4
(2)添加hive-sist.xml配置文件,配置Mysql的相关信息。
$ vi hive-sist.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property> <name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?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>用户名</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>密码</value>
</property>
</configuration>
不过这里需要注意的是由于使用了mysql数据库,所以就需要上传mysql的连接驱动jar包到hive的安装目录下面的lib文件夹。使用fx上传工具上传即可。
链接:https://pan.baidu.com/s/1fReep9RIzuSh0Ey2O3gsHA
提取码:1314