Hive的安装

1.hive三种安装模式

一.内嵌模式(元数据保村在内嵌的derby种,允许一个会话链接)

二.本地模式(本地安装mysql 替代derby存储元数据)

三.远程模式(远程安装mysql 替代derby存储元数据)

环境说明:三台虚拟机 hadoop环境(版本:1.2.1)

Namenode和secondname (192.168.1.110)

Datanode1(192.168.1.111)

Datanode2(192.168.1.112)

hive我采用的是0.11版本,mysql部署在datanode2上;使用当前最新版本0.12总是出错,查看原配置文件就有错误,截图如下

hive部署之本地模式 hive本地模式设置_大数据

2.下载hive

http:hive.apache.org(官网)本文采用0.11.0版本,解压。

hive部署之本地模式 hive本地模式设置_mysql_02

3.安装前准备

[tony@namenode ~]$ vim ~/.bash_profile
设置环境变量向文件加入
 export HIVE_HOME=/home/tony/hive-0.11.0-bin
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPAHT:$HIVE_HOME/lib

4.添加修改配置文件

[tony@namenode ~]$cp hive-env.sh.templatehive-env.sh
[tony@namenode ~]$cphive-default.xml.template hive-site.xml

[tony@namenode hive-0.11.0-bin]$ vim conf/hive-env.sh

hive部署之本地模式 hive本地模式设置_java_03

5.启动hive

启动时候选择提示模式

打开调试模式:编译调试找出问题

[tony@namenode hive-0.11.0-bin]$hive -hiveconf hive.root.logger=DEBUG,console

hive部署之本地模式 hive本地模式设置_hive_04

Hive内嵌式模式安装完成可以建立一个表并查看

在hive命令行模式下

hive> create table jack (namestring,age int)
hive> show tables;
OK
jack
tony
Time taken: 0.222 seconds,Fetched: 2 row(s)

hive部署之本地模式 hive本地模式设置_hive部署之本地模式_05

远程模式和本地模式安装大致相同(只是msyql安装的位置不同),本文只介绍远程模式


1.在datanode2 安装mysql数据,安装服务端和客户端

hive部署之本地模式 hive本地模式设置_hive部署之本地模式_06

本文采用rpm包安装,安装过程会安装包依赖,只要耐心安装即可成功

3.安装完成后登陆mysql服务端修改密码,并创建live数据库,并给live数据库授权

mysql> create database hive;
mysql> GRANT ALL ON hive.* TO ‘tony’@’192.168.1.110’IDENTIFIED BY "123456

此处的密码必须和hive-site.xml中javax.jdo.option.ConnectionUserName和javax.jdo.option.ConnectionPassword的密码相一致

4.现在192.168.1.110登陆mysql尝试是能够登陆

hive部署之本地模式 hive本地模式设置_hive_07

5.修改配置文件

向hive lib目录增加mysql的连接器mysql-connector-java-5.1.25-bin.jar 下载地址:

hive部署之本地模式 hive本地模式设置_hive部署之本地模式_08

[tony@namenode conf]$ vim hive-site.xml

指出连接mysql的方法

<property>
<name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.1.112:3306/hive?createDatabaseIfNotExist=true</value>
 <description>JDBC connect string for aJDBC metastore</description>
</property>
Mysq连接驱动程序
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driverclass name for a JDBC metastore</description>
</property>
Mysql登陆用户名和mysql授权的一致
<property>
 <name>javax.jdo.option.ConnectionUserName</name>
<value>tony</value>
 <description>username to use againstmetastore database</description>
</property>
Mysql登陆密码和mysql授权的一致
<property>
 <name>javax.jdo.option.ConnectionPassword</name>
 <value>hive</value> 
<description>password to use againstmetastore database</description>
</property>

6启动hive

[tony@namenode conf]$hive -hiveconf hive.root.logger=DEBUG,console启动调试模式

hive部署之本地模式 hive本地模式设置_java_09

查看所建立的表

hive部署之本地模式 hive本地模式设置_hive_10

登陆远程数据mysql查看保存的元数据

hive部署之本地模式 hive本地模式设置_hive部署之本地模式_11

完毕



转载于:https://blog.51cto.com/3022241/1322417