概览
1.上传解压
2.配置环境变量
3.配置hive-site.xml
4.将mysql的连接驱动放到hive/lib下
5.初始化操作
6.执行hive命令并测试
7.异常处理
如果是集群版,Hive安装在一台虚拟机上就行
首先确保hdfs和mysql是正确启动的
1.上传解压
软件:hive-2.3.3
在/usr在创建hive文件夹,用来存放压缩包和作为安装路径
1 | [root@master ~]# cd /usr |
利用Xshell连接虚拟机,并使用Xftp将hive压缩包上传到hive文件夹下
解压
1 | [root@master hive]# tar -zxf apache-hive-2.3.3-bin.tar.gz |
2.配置环境变量
1 | [root@master hive]# vim /etc/profile |
在最后添加1
2export HIVE_HOME=/usr/hive/apache-hive-2.3.3-bin
export PATH=$PATH:$HIVE_HOME/bin
刷新环境变量并测试
1 | [root@master hive]# source /etc/profile |
3.配置hive-site.xml
你会发现/usr/hive/apache-hive-2.3.3-bin/conf/并没有hive-site.xml文件
直接新建一个就行
1 | [root@master hive]# cd apache-hive-2.3.3-bin/conf/ |
在hive-site.xml中写入
ip改为自己的1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.134.154:3306/hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</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>root</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!-- 这是hiveserver2 -->
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>192.168.134.154</value>
</property>
</configuration>
4.将mysql的连接驱动放到hive/lib下
进入到你的hive安装目录的lib下,利用Xftp将驱动传输进去
我的mysql数据库连接驱动的百度云链接:https://pan.baidu.com/s/1wCBuZQaCP_nKT5t504SeoA
提取码:fakd
5.初始化操作
利用数据库工具SQLyog在mysql创建个新的数据库hive
或者使用命令创建
1 | #之后输入密码,我的mysql密码是root(因为之前配置sqoop的时候设置了一次user表) |
此时保证hadoop启动着
初始化操作如下
1 | [root@master conf]# schematool -initSchema -dbType mysql |
6.执行hive命令并测试
1 | [root@master conf]# hive |
7.异常处理
如果出错了1
2hive> show databases;
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
HIVE_HOME/lib 下的derby-10.11.1.1.jar问题,把derby-10.10.2.0.jar 换成derby-10.10.1.1.jar,把derby-10.10.2.0.jar删除,问题成功解决
derby-10.10.1.1.jar的百度云链接:https://pan.baidu.com/s/1v6mIGRjf8mlRQicRoau7iw
提取码:5ga1
其中hive-site.xml中的部分hiveserver2的配置是用于hiveserver2的,现在可以不配置,之后会介绍如何配置hiveserver2