安装与配置
1. 下载hive-0.12.0.tar.gz,并使用以下命令解压。
tar -zxvf hive-0.12.0.tar.gz
解压后文件夹为:hive-0.12.0
2. 移动hive-0.12.0到opt目录下,命令如下。
sudo mv hive-0.12.0 /opt/hive-0.12.0
3. 设置hive的环境变量
如(图1)所示,使用命令 sudo gedit /etc/profile 打开文件后,在文件最后面加入:
export HIVE_HOME=/hadoop/hive-0.12.0
export CLASSPATH=.:$CLASSPATH:$HIVE_HOME/lib
export PATH=$PATH:$HIVE_HOME/bin
(图1)
备注:最后要使用命令:source /etc/profile 使环境变量立即生效。
4. 创建hive-env.sh、hive-site.xml文件,如(图2)所示。
cd /opt/hive-0.12.0/conf
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
(图2)
5. 修改hive-env.sh文件,如(图3)所示。
HADOOP_HOME=/opt/hadoop-1.2.1
export HIVE_CONF_DIR=/opt/hive-0.12.0/conf
(图3)
6. 修改hive-site.xml文件,如(图4,图5)所示。
有两处需要修改的:
(1) hive-site.xml文件最后面,大约2000行作业,把
<value>auth</auth>修改为<value>auth</value>。
(图4)
(2) 把hive.metastore.schema.verification=true,修改为
hive.metastore.schema.verification=false。
意思是:(强制metastore的schema一致性,开启的话会校验在metastore中存储的信息的版本和hive的jar包中的版本一致性,并且关闭自动schema迁移,用户必须手动的升级hive并且迁移schema,关闭的话只会在版本不一致时给出警告,默认是false不开启.)
(图5)
备注:如果不修改成false的话会报一下错误:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
7. 到此hive安装完成,下面运行和测试下是否安装成功。
五、运行和测试
1. 使用 start-all.sh 命令启动hadoop集群,并使用jps查看是否启动成功,如(图6)所示。
(图6)
2. 首次使用的时候,需要使用 hive --service cli 命令,来启动hive命令行模式,如(图7)所示。
然后使用命令:
show tables;
create table test1(id int,name string);
select * from test1;
drop table test1;
来测试HiveQL是否能使用。
(图7)
备注:首次如果不使用hive --service cli 命令,来启动hive命令行模式,会报如下错误:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
再次使用的时候就不需要使用hive --service cli 命令了。
3. 如果出现如(图7)所示页面,说明运行和测试成功。
备注:可以使用以下命令使报错更详细一点:
hive -hiveconf hive.root.logger=DEBUG,console
参考链接
http://gaoxianwei.iteye.com/blog/2028401