hive搭建共分为三种模式:1、embedded,2、local,3、remote server

在这里,主要是配置第3种模式:remote server模式,如下图所示:

我的环境共三台虚拟机:Host0,Host2,Host3

在remote server模式中,Host0:Hive-server2

            Host2:Hive-metastore

            Host3:MySQL server

1、分别在Host0,Host2和Host3中安装hive-server2,hive-metastore,mysql-server

yum install hive-server2 -y
yum install hive-metastore -y
yum install mysql-server -y 

2、在MySQL server中创建hive数据库以及hive用户,并设置hive用户可以远程登录

create database hive;
create user hive identified by '';
grant all PRIVILEGES on *.* to hive@’%’ identified by ‘123456’;
flush privileges;

3、在hive-metastore中设置hive配置文件,使其能连接到MySQL server

  hive配置文件位置:/etc/hive/conf/hive-site.xml

  向hive-site.xml中添加下列内容

<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://Host3:3306/hive?characterEncoding=UTF-8</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>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value></value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<!-- base hdfs path -->
<value>/user/hive/warehouse</value>
<description>location of default database for the warehouse</description>
</property>

4、在hdfs上创建hive.metastore.warehouse.dir目录,并修改权限

sudo -u hdfs hadoop fs -mkdir -p /user/hive/warehouse
sudo -u hdfs hadoop fs -chown -R hive:hive /user/hive

5、在hive-server2中设置hive配置文件,使其能连接到hive-metastore

  hive配置文件位置:/etc/hive/conf/hive-site.xml

  向hive-site.xml中添加下列内容

<property>
<name>hive.metastore.uris</name>
<value>thrift://Host2:9083</value>
</property>

6、分别在Host0,Host2中启动hive-server2,hive-metastore

service hive-server2 start
service hive-metastore start

7、在另一台虚拟机中进行测试(需要安装hive)

[root@client ~]# beeline
which: no hbase in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1..0_60/bin:/root/bin)
Beeline version 1.1.-cdh5.8.0 by Apache Hive
beeline> !connect jdbc:hive2://Host0:10000
scan complete in 11ms
Connecting to jdbc:hive2://Host0:10000
Enter username for jdbc:hive2://Host0:10000: 1
Enter password for jdbc:hive2://Host0:10000: *
Connected to: Apache Hive (version 1.1.-cdh5.8.0)
Driver: Hive JDBC (version 1.1.-cdh5.8.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
: jdbc:hive2://Host0:10000> show tables;
INFO : Compiling command(queryId=hive_20160912015858_bd9495d2-191f-429c-bf01-a165821b6d9a): show tables
INFO : Semantic Analysis Completed
INFO : Returning Hive schema: Schema(fieldSchemas:[FieldSchema(name:tab_name, type:string, comment:from deserializer)], properties:null)
INFO : Completed compiling command(queryId=hive_20160912015858_bd9495d2-191f-429c-bf01-a165821b6d9a); Time taken: 0.027 seconds
INFO : Concurrency mode is disabled, not creating a lock manager
INFO : Executing command(queryId=hive_20160912015858_bd9495d2-191f-429c-bf01-a165821b6d9a): show tables
INFO : Starting task [Stage-:DDL] in serial mode
INFO : Completed executing command(queryId=hive_20160912015858_bd9495d2-191f-429c-bf01-a165821b6d9a); Time taken: 0.061 seconds
INFO : OK
+-----------+--+
| tab_name |
+-----------+--+
+-----------+--+
No rows selected (0.389 seconds)

需要注意的是:如果在hiveserver2方式中没有使用Kerberos,则上述密码可以随意写

8、在Hive中创建表,并将数据导入表中

CREATE TABLE test(id int, A int, B int, C int) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
load data inpath '/user/sqoop/sample' into table test;
/user/sqoop/sample表中的数据格式为:11419,9,160,48格式
当执行load data inpath '/user/sqoop/sample' into table test;后,/user/sqoop/sample里的数据就mv到了/user/hive/warehouse/test中去了,/user/sqoop/sample目录为空。

CentOS配置Hive的更多相关文章

  1. 指导手册 07 安装配置HIVE

    指导手册 07 安装配置HIVE   安装环境及所需安装包: 1.操作系统:centos6.8 2.四台虚拟机:master :10.0.2.4, slave1:10.0.2.5,slave2:10. ...

  2. CentOS安装Hive

    1.环境和软件准备: hive版本:apache-hive-2.3.6-bin.tar.gz,下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive ...

  3. 配置 Hive On Tez

    配置 Hive On Tez 标签(空格分隔): hive Tez 部署底层应用 简单介绍 介绍:tez 是基于hive 之上,可以将sql翻译解析成DAG计算的引擎.基于DAG 与mr 架构本身的优 ...

  4. Centos搭建Hive

    Centos搭建Hive 一.Hive简介 二.安装Hive 2.1hive下载 2.2上传解压 2.3配置hive相关的环境变量 三.Mysql 3.1安装mysql connector 3.2 将 ...

  5. Linux CentOS 配置Tomcat环境

    一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...

  6. CentOS 配置防火墙操作实例(启、停、开、闭端口):

    CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service   iptables status< ...

  7. CentOS配置SSH免密码登录后,仍提示输入密码

    CentOS配置SSH无密码登录需要3步: 生成公钥和私钥 导入公钥到认证文件,更改权限 测试 1.生成公钥和私钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 默 ...

  8. Hadoop之Hive(2)--配置Hive Metastore

    Hive metastore服务以关系性数据库的方式存储Hive tables和partitions的metadata,并且提供给客户端访问这些数据的metastore service的API.下面介 ...

  9. CentOS配置ssh无密码登录

      CentOS配置ssh无密码登录的注意点   前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service s ...

随机推荐

  1. python变量作用域,函数与传参

    一.元组传值: 一般情况下函数传递参数是1对1,这里x,y是2个参数,按道理要传2个参数,如果直接传递元祖,其实是传递一个参数 >>> def show( x, y ): ... p ...

  2. 天天生鲜 - App设计

    天天生鲜-思路数据库设计 天天生鲜-各个App 全文检索 天天生鲜-静态文件 一.项目目录 daily_fresh_demo - daily_fresh_demo - df_cart # 购物车功能 ...

  3. 5月23日——SPA单页面应用的原理

    一.什么是SPA(SPA 的概念) 单页 Web 应用 (single-page application 简称为 SPA),简单理解为:仅仅在web页面初始化时加载相应的HTML.JavaScript ...

  4. 标准JSF的生命周期

    JavaServer Faces (JSF) 是一种用于构建Java Web 应用程序的标准框架.它提供了一种以组件为中心的用户界面(UI)构建方法,从而简化了Java服务器端应用程序的开发.它的生命 ...

  5. 基于MD5的增强型摘要算法

    message-digest algorithm 5(信息-摘要算法),md5的长度,默认为128bit,也就是128个0和1的二进制串.但是,这样表达是很不友好的,所以将二进制转成了16进制,每4个 ...

  6. 关于kernel-devel、kernel-header和kernel src的区别

    A kernel-header package would contain 'header files' needed by some applications which would be buil ...

  7. LeetCode题解之Rotate String

    1.题目描述 2.问题分析 直接旋转字符串A,然后做比较即可. 3.代码 bool rotateString(string A, string B) { if( A.size() != B.size( ...

  8. Prometheus Node_exporter 之 System Detail

    System Detail 1. Context Switches / Interrupts type: GraphUnit: shortLabel: CounterContext switches ...

  9. LINQ学习:Select的用法

    转载于:http://www.cnblogs.com/ForEvErNoME/archive/2012/07/25/2606659.html 说明:在查询表达式中,select 子句可以指定将在执行查 ...

  10. python基础学习10----集合

    集合具有无序性,互异性 一.集合的建立 空集合 s=set() s={}#这样默认为是一个空字典 集合内的元素是可哈希的即不可变的数据类型 s={1,2,3,4} s=set([1,2,3,4]) s ...