Hive(一)Hive的简介、安装配置

本文详细介绍如何在Ubuntu 14.04环境下,基于Hadoop 2.6.5伪分布式模式安装配置Hive 1.2.2版本,并连接MySQL 5.5作为元数据存储。内容涵盖Hive环境搭建步骤、配置文件调整及常见问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Hive简介

二、Hive伪分布式安装配置(基于ubuntu14.04+hadoop2.6.5伪分布式+mysql5.5):

1.我的hadoop安装目录在 /usr/local/hadoop-2.6.5 中, 到官网http://www.eu.apache.org/dist/hive/下载apache-hive-1.2.2-bin.tar.gz并解压到/usr/local/hadoop-2.6.5/hive 中:

tar –zxvf /usr/local/hadoop-2.6.5/hive apache-hive-1.2.2-bin.tar.gz

2.修改 /etc/profile 文件,添加HIVE_HOME和PATH:

sudo gedit ~/.bashrc

在打开的文件的末尾添加以下信息:
export HIVE_HOME=/usr/local/hadoop-2.6.5/hive/apache-hive-1.2.2-bin

export PATH= $PATH:$HIVE_HOME/bin

保存后关闭,进入终端,source一下。

source ~/.bashrc使修改立即生效

3. 在 /usr/local/hadoop-2.6.5/apache-hive-1.2.2-bin/conf 复制一份 hive-default.xml.template 为 hive-size.xml 文件

cp hive-default.xml.template hive-site.xml ,修改内容如下,模板里面没有 hive.metastore.local ,手动添加如下内容,账户和密码是使用Mysql的账户密码:

 

<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>Username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>××××</value>
<description>password to use against metastore database</description>
</property>

 

 

 

 

 

在 /usr/local/hadoop-2.6.5/apache-hive-1.2.2-bin/bin/ 修改hive-config.sh添加下面的2个export语句 :

 

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 

export HADOOP_HOME=/usr/local/hadoop-2.6.5

 

 

 

 

 

 

https://dev.mysql.com/downloads/connector/j/下载的 mysql-connector-java-5.1.42.tar.gz 中的 mysql-connector-java-5.1.42-bin.jar 复制到apache-hive-1.2.2-bin/lib 中


4.启动hive

 

在Mysql和Hadoop运行的情况下,使用 hive 命令运行hive:

hive

可能发生的问题

(1)Exception in thread “main” java.lang.RuntimeException: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: \${system:java.io.tmpdir%7D/\$%7Bsystem:user.name%7D

at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)

at

处理办法:在配置文件hive-site.xml里找” system:java.io.tmpdir “把他们都换成绝对路径如: /usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin/iotmp

(2)[ERROR] Terminal initialization failed; falling back to unsupported

java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected

原因:hadoop目录下存在老版本jline:

/usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/:

-rw-r–r– 1 root root 87325 Mar 10 18:10 jline-0.9.94.jar

解决办法:

cp /usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin/lib/jline-2.12.jar /usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/ 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

w_t_y_y

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

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

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

打赏作者

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

抵扣说明:

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

余额充值