一、简介

hive是基于hadoop的一种数据仓库工具,可以将结构化的文件映射成为数据库的一张表,并提供简单sql查询功能,底层实现是转化为MapReduce任务计算。

二、安装

(1)下载

从cdh下载页下载

http://archive.cloudera.com/cdh5/cdh/5/

hive-1.1.0-cdh5.11.1.tar.gz

下载好后上传至服务器的/home/hadoop/software,并解压至/home/hadoop/app目录下

mv hive-1.1.0-cdh5.11.1.tar.gz hive

(2)配置

配置hive-env.sh(在hive主目录下的conf文件夹下)

# Set HADOOP_HOME to point to a specific hadoop install directory
HADOOP_HOME=/home/hadoop/app/hadoop # Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/home/hadoop/app/hive/conf  

配置hive-site.xml

由于hive中的元数据(即所有的数据库信息、表信息、及表字段信息)需要存储在关系型数据库中,而hive内置了derby数据库,但是使用这个数据库的缺点是,

hive提供的hiveserver2只能一个用户访问,所以需要配置mysql,使元数据存储在mysql上

(3)安装mysql

安装mysql很容易,使用yum安装即可

首先卸载已经有的mysql

sudo rpa -qa|grep mysql

sudo yum remove ...

sudo rm -rf /etc/my.conf

安装:

sudo yum install mysql mysql-server mysql-devel -y

安装完成后,设置为跟随机器启动

chkconfig --list |grep mysql

chkconfig mysqld on

启动mysql服务

service mysqld start

设置mysql密码

(一开始安装好后,密码为空直接进去即可)

mysql -uroot -p

进去命令行之后,设置密码

SET PASSWORD=PASSWORD("123456")

设置所有用户都可以用root用户连接进来

use mysql;
select user,host,password from user;
update user set host='%' where user='root' and host='localhost';
即可
 

 (4)配置hive的元数据服务
hive-site.xml<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop001:3306/metastore_new?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>123456</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property> <property>
<name>hive.server2.thrift.bind.host</name>
<value>hadoop001</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoop001:9083</value>
</property>
</configuration>

(5)下载mysql驱动包到hive的lib目录下

(6)bin/hive

即可打开命令行

最新文章

  1. 解读ASP.NET 5 &amp; MVC6系列(11):Routing路由
  2. UvaOJ10369 - Arctic Network
  3. Understanding the WPF Layout System
  4. Cocos2d-JS引入资源
  5. SqlCommand类
  6. HDU 4709 Herding 几何题解
  7. 201521123103 《Java学习笔记》 第九周学习总结
  8. Head First设计模式之中介者模式
  9. 关于我使用spring mvc框架做文件上传时遇到的问题
  10. mysql Navicat 连接MySQL 8.0.11 出现2059错误
  11. H5-FileReader实现图片预览&amp;Ajax上传文件
  12. Saiku权限控制(四)
  13. oracle 服务名 数据库名 实例名
  14. PHP与Java进行通信的实现方法
  15. testng入门教程5TestNG套件测试
  16. 逆地址解析协议RARP
  17. Java语法知识总结
  18. spring boot实战(第二篇)事件监听
  19. vector的二维用法+前缀和
  20. 解决:R读取含中文excel文件,read.xlsx乱码问题

热门文章

  1. testlink搭建教程
  2. 盘一盘 AQS和ReentrantLock
  3. IoT时代:Wi-Fi“配网”技术剖析总结
  4. python paramiko外部传参和内部调用命令的方法
  5. SpringBoot中关于Shiro权限管理的整合使用
  6. sea.js的同步魔法
  7. Linux 设置服务开机启动
  8. Java 并发编程(一):摩拳擦掌
  9. mybatis 源码分析(六)StatementHandler 主体结构分析
  10. (五十二)c#Winform自定义控件-LED数字