Hive 安装及测试一
2015-10-16 09:49
375 查看
前几节演示了hadoop以及hbase的集群安装和简单实例,下面我们说一下hadoop的成员hive数据仓库的安装配置,及使用实例。hive是以及hadoop之上的,所以我们需要在hadoop的环境下,安装配置hive。我们延续《hadoop2高可用集群配置安装》中的环境来配置安装hive,在study-93机器上安装hive。
一、安装配置mysql
由于hive需要使用关系型数据库存储表信息,目前支持derby mssql mysql oracle postgres数据,下面的实例我们使用mysql数据库。
关于mysql数据库的安装和配置参考:http://www.centoscn.com/mysql/2014/0812/3481.html
创建数据库hive 及用户hive并授予相应权限
解压apache-hive-1.2.1-bin.tar.gz
tar -zxvf apache-hive-1.2.1-bin.tar.gz
mv apache-hive-1.2.1-bin hive-1.2.1
添加环境变量
vi ~/.bash_profile
export HIVE_HOME=/home/hadoop/hive-1.2.1
export PATH=$PATH:$HIVE_HOME/bin
使其有效
source ~/.bash_profile
三、配置hive
cd hive-1.2.1/conf
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp beeline-log4j.properties.template beeline-log4j.properties
cp hive-exec-log4j.properties.template hive-exec-log4j.properties
cp hive-log4j.properties.template hive-log4j.properties
mkdir -p ~/hive-1.2.1/{logs,tmp}
配置hive-env.sh
vi hive-env.sh
vi hive-site.xml
修改hive-log4j.properties,
hive.log.dir=/home/hadoop/hive-1.2.1/logs
修改hive-exec-log4j.properties
hive.log.dir=/home/hadoop/hive-1.2.1/logs
最后把mysql的驱动包拷贝到Hive安装路径下的lib目录。
四、启动
hive 有三种启动方式
1、hive命令行模式,直接输入bin/hive的执行程序,或者输入 hive –service cli
用于linux平台命令行查询,查询语句基本跟mysql查询语句类似
2、hive web界面的启动方式,hive –service hwi
用于通过浏览器来访问hive,需要配置指定war文件,感觉没多大用途
3、hive 远程服务 (端口号10000) 启动方式,nohup hive –service hiveserver &
用java等程序实现通过jdbc等驱动的访问hive就用这种起动方式了,这个是程序员最需要的方式了
启动hive service :$HIVE_HOME/bin/hive --service hiveserver 10001 >/dev/null 2>/dev/null &
相关的jar包下载:http://mvnrepository.com/artifact/org.apache.hive/hive-service
启动hive时报如下的错误[ERROR] Terminal initialization failed; falling back to unsupported
解决办法:由于hive 1.2.0自带的jline包跟hadoop 2.6.0自带的版本不一致,因此需要将$HIVE_HOME/lib/jline-2.12.jar 这个文件替换掉$HADOOP_HOME/share/hadoop/yarn/lib 下原来的版本 (即:将旧版本删除,复制新版本到此目录),否则hive启动将失败。
启动完成之后,我们可以看一下mysql数据库hive,会自动创建一些表TBLS存储表信息,COLUMNS_V2存储表中列信息等
参考文章
1.Hive安装与配置——深入浅出学Hive
2.Hive安装及使用攻略
一、安装配置mysql
由于hive需要使用关系型数据库存储表信息,目前支持derby mssql mysql oracle postgres数据,下面的实例我们使用mysql数据库。
关于mysql数据库的安装和配置参考:http://www.centoscn.com/mysql/2014/0812/3481.html
创建数据库hive 及用户hive并授予相应权限
create database hive; grant all on hive.* to hive@'%' identified by '123456'; grant all on hive.* to hive@'localhost' identified by '123456'; grant all on hive.* to hive@'study-93' identified by '123456'; flush privileges;二、安装hive
解压apache-hive-1.2.1-bin.tar.gz
tar -zxvf apache-hive-1.2.1-bin.tar.gz
mv apache-hive-1.2.1-bin hive-1.2.1
添加环境变量
vi ~/.bash_profile
export HIVE_HOME=/home/hadoop/hive-1.2.1
export PATH=$PATH:$HIVE_HOME/bin
使其有效
source ~/.bash_profile
三、配置hive
cd hive-1.2.1/conf
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp beeline-log4j.properties.template beeline-log4j.properties
cp hive-exec-log4j.properties.template hive-exec-log4j.properties
cp hive-log4j.properties.template hive-log4j.properties
mkdir -p ~/hive-1.2.1/{logs,tmp}
配置hive-env.sh
vi hive-env.sh
HADOOP_HOME=/home/hadoop/hadoop-2.6.0 export HIVE_CONF_DIR=/home/hadoop/hive-1.2.1/conf export HIVE_AUX_JARS_PATH=/home/hadoop/hive-1.2.1/lib配置hive-site.xml,配置上mysql数据连接、驱动、用户名和密码
vi hive-site.xml
<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.1.80: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>hive</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> </property>再将${system:java.io.tmpdir}替换为/home/hadoop/hive-1.2.1/tmp,将${system:user.name}替换为hive
修改hive-log4j.properties,
hive.log.dir=/home/hadoop/hive-1.2.1/logs
修改hive-exec-log4j.properties
hive.log.dir=/home/hadoop/hive-1.2.1/logs
最后把mysql的驱动包拷贝到Hive安装路径下的lib目录。
四、启动
hive 有三种启动方式
1、hive命令行模式,直接输入bin/hive的执行程序,或者输入 hive –service cli
用于linux平台命令行查询,查询语句基本跟mysql查询语句类似
2、hive web界面的启动方式,hive –service hwi
用于通过浏览器来访问hive,需要配置指定war文件,感觉没多大用途
3、hive 远程服务 (端口号10000) 启动方式,nohup hive –service hiveserver &
用java等程序实现通过jdbc等驱动的访问hive就用这种起动方式了,这个是程序员最需要的方式了
启动hive service :$HIVE_HOME/bin/hive --service hiveserver 10001 >/dev/null 2>/dev/null &
相关的jar包下载:http://mvnrepository.com/artifact/org.apache.hive/hive-service
启动hive时报如下的错误[ERROR] Terminal initialization failed; falling back to unsupported
解决办法:由于hive 1.2.0自带的jline包跟hadoop 2.6.0自带的版本不一致,因此需要将$HIVE_HOME/lib/jline-2.12.jar 这个文件替换掉$HADOOP_HOME/share/hadoop/yarn/lib 下原来的版本 (即:将旧版本删除,复制新版本到此目录),否则hive启动将失败。
启动完成之后,我们可以看一下mysql数据库hive,会自动创建一些表TBLS存储表信息,COLUMNS_V2存储表中列信息等
参考文章
1.Hive安装与配置——深入浅出学Hive
2.Hive安装及使用攻略
相关文章推荐
- 详解HDFS Short Circuit Local Reads
- Hadoop_2.1.0 MapReduce序列图
- 使用Hadoop搭建现代电信企业架构
- 分享Hive的一份胶片资料
- 单机版搭建Hadoop环境图文教程详解
- Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
- hadoop常见错误以及处理方法详解
- hadoop 单机安装配置教程
- hadoop的hdfs文件操作实现上传文件到hdfs
- hadoop实现grep示例分享
- Apache Hadoop版本详解
- linux下搭建hadoop环境步骤分享
- hadoop client与datanode的通信协议分析
- hadoop中一些常用的命令介绍
- Hadoop单机版和全分布式(集群)安装
- 用PHP和Shell写Hadoop的MapReduce程序
- hadoop map-reduce中的文件并发操作
- Hadoop1.2中配置伪分布式的实例
- java结合HADOOP集群文件上传下载
- 用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试