CentOS配置Hive

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 ‘123456‘;
grant all PRIVILEGES on *.* to [email protected]’%’ 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>123456</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)

[[email protected] ~]# 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.8.0_60/bin:/root/bin)
Beeline version 1.1.0-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.0-cdh5.8.0)
Driver: Hive JDBC (version 1.1.0-cdh5.8.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: 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-0: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目录为空。
时间: 2025-01-02 21:16:36

CentOS配置Hive的相关文章

配置 Hive On Tez

配置 Hive On Tez 标签(空格分隔): hive Tez 部署底层应用 简单介绍 介绍:tez 是基于hive 之上,可以将sql翻译解析成DAG计算的引擎.基于DAG 与mr 架构本身的优缺点,tez 本身经过测试一般小任务在hive mr 的2-3倍速度左右,大任务7-10倍左右,根据情况不同可能不一样. 对于 Tez-0.9.0 以及更高版本, Tez 需要 Apache Hadoop 版本为 2.7.0 或更高 安装 Apache Hadoop 2.7.0 或更高版本,这里选取

阿里云CentOS配置全过程

阿里云CentOS配置全过程 拿到服务器的ip.初始密码以后.我们先要用远程连接工具putty连接服务器主机. 启动putty.exe程序,进入putty主界面,在Host Name 栏中输入你的服务器ip地址,Saved Sessions 填入你的主机名称(可自定义,用于区别你的服务器).点击Save保存配置.选中你的服务器名点击open开始连接服务器. 第一次连接,会出现对话框,点击是 出现登录界面,输入用户名,默认为超级用户root,接着输入密码,要注意的是密码不会显示在屏幕上.输入密码时

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

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

CentOS 配置httpd使局域网可以正常访问

[转载请注明出处: 钱国正的专栏http://blog.csdn.net/qianguozheng/article/details/37611859] 问题: 在CentOS上安装apache,配置好服务器本机可以访问,但是外部局域网IP不能访问 解决方法: 1.修改配置文件/etc/httpd/conf/httpd.conf <Directory "/var/www/cgi-bin"> AllowOverride None Options None Order allow

centos配置不用本地的smtp

当使用mail命令发邮件时,默认的是使用本地的smtp服务,centos5的时候是sendmail,centos6的时候是postfix.但每台机器都维护一个smtp服务,成本开销很大. 通过修改/etc/mail.rc可以指定远程的smtpserver cat >> /etc/mail.rc << EOF # For set smtpserver set smtp=192.168.122.100 #下面三行不一定需要打开,根据实际情况而定 #set smtp-auth=login

CentOS配置网易源

centos配置网易源 参考: http://mirrors.163.com/.help/centos.html 1.下载CentOS6-Base-163.repo:(这里以centos6为例.请换成自己对应版本) http://mirrors.163.com/.help/CentOS6-Base-163.repo 放入:/etc/yum.repos.d/目录: cp CentOS6-Base-163.repo /etc/yum.repos.d/ 2.备份/etc/yum.repos.d/Cen

centos 配置 samba 与windows共享文件夹

yum install samba/etc/samba/smb.confdirectory mask = 0777 ← 指定新建目录的属性(以下4行) force directory mode = 0777 directory security mask = 0777 force directory security mode = 0777 create mask = 0777 ← 指定新建文件的属性(以下4行) force create mode = 0777 security mask =

详解CentOS配置和管理web服务-Apache

详解CentOS配置和管理web服务-Apache 家住海边喜欢浪:zhang789.blog.51cto.com 目录 1.web介绍 2.web历史和工作原理 3.http请求流程 4.关于Apache 5.Apache服务器软件安装使用 6.符号链接和虚拟目录 7.页面重定向 8.Apache日志文件 9.Apache安全配置 10.虚拟主机 10.1.基于IP 10.2.基于域名 10.3.基于端口 web服务器配置和管理 http协议简介 http协议,全称HyperText Tran

CentOS 配置l第三方epo源

CentOS 配置第三方epol源 前言 在CentOS默认的yum中有时会没有我们所需要的安装包,这是就需要配置第三方源.配置好源后直接yum就可以安装使用所需要的软件包了 操作步骤 1.备份(如有配置其他epel源) mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.ba