Hive安装Version2.1.0
Hive安装,基于版本2.1.0,
使用apache-hive-2.1.0-bin.tar.gz安装包。
1.安装规划
| 角色规划 | IP/机器名 | 安装软件 | 运行进程 |
|---|---|---|---|
| hive | zdh-9 | hive | RunJar(metastore),RunJar(hiveserver2) |
2.安装用户
hive/zdh1234
3.配置hosts
10.43.159.9 zdh-9
4.安装依赖
4.1.JDK配置
export JAVA_HOME=/usr/java/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
4.2.Hadoop集群
hdfs://gagcluster
NameNode1:hdfs://10.43.159.7:9000
NameNode2:hdfs://10.43.159.9:9000
4.3.Mysql数据库
Unix:mysql/zdh1234
mysql:root/zdh1234
Link: zdh-9:3306
5.在zdh-9上面创建hive用户
useradd -g hadoop -s /bin/bash -md /home/hive hive
6.上传并且解压安装包
tar -zxvf apache-hive-2.1.0-bin.tar.gz
7.配置环境变量
安装并且配置JDK
export JAVA_HOME=/usr/java/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
配置Hive环境变量和别名,方便操作
export HIVE_HOME=~/apache-hive-2.1.0-bin
export PATH=$PATH:$HIVE_HOME/bin
alias logs='cd $HIVE_HOME/logs'
alias conf='cd $HIVE_HOME/conf'
8.拷贝相关jar包
拷贝mysql的jdbc驱动包到hive的lib目录下面,mysql的驱动包需要自己下载
cp /usr/share/java/mysql-connector-java.jar ~/apache-hive-2.1.0-bin/lib/
拷贝hive的jdbc目录下hive-jdbc-2.1.0-standalone.jar到lib目录下,否则执行beeline报错
cp hive-jdbc-2.1.0-standalone.jar ../lib/
9.从模板获得配置文件
进入conf目录把所有带template后缀的文件,移除后缀:
rename .template "" *.template
再把hive-default.xml重命名为hive-site.xml:
mv hive-default.xml hive-site.xml
10.修改hive-env.sh配置项
export HADOOP_HOME=/home/hdfs/hadoop-2.7.1
export HIVE_CONF_DIR=/home/hive/apache-hive-2.1.0-bin/conf
主要是配置hadoop的目录,且hive启动前hdfs需要已经启动。
11.修改hive-site.xml的配置项
<property>
<name>hive.exec.local.scratchdir</name>
<value>/home/hive/apache-hive-2.1.0-bin/tmp</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/home/hive/apache-hive-2.1.0-bin/tmp/resources</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/home/hive/apache-hive-2.1.0-bin/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://zdh-9:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>zdh1234</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>true</value>
<description>creates necessary schema on a startup if one doesn't exist. set this to false, after creating it once</description>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>false</value>
</property>
<property>
<name>datanucleus.schema.autoCreateAll</name>
<value>true</value>
</property>
上面主要是配置hive的元数据使用mysql存储,配置mysql的一些连接。
12.在mysql预先创建数据库以及用户
创建一个数据库
CREATE DATABASE hive;
使用已经存在的root@zdh-9用户,并且设置相应的密码
update mysql.user set password=password("zdh1234") where user="root" and host='zdh-9';
或者使用root用户新建hive用户,
注意修改hive-site.xml中的数据库用户名密码,
保证配置项正确。
13.执行脚本,初始化数据库schema如下:
schematool -initSchema -dbType mysql
14.启动hive
hive
通过jps可以看到新进程RunJar
15.执行测试命令
测试hive创建表格,使用hive命令行:
hive
create table student(name string,sex string,age int);
show tables;
desc student;
exit;
查看mysql数据库hive中创建的表格在元数据库中有相应更新
select * from TBLS;
若查询到TBLS表中TBL_NAME的内容有student,
则说明刚才在hive命令行中创建的表格student的元数据更新到MySql中了。
16.启动hive server2
后台启动metastore服务和hiveserver2服务
hive --service metastore > metastore.log 2>&1 &
hive --service hiveserver2 > hiveserver2.log 2>&1 &
或者
nohup hive --service metastore&
nohup hive --service hiveserver2&
17.使用beeline命令行测试
beeline
!connect jdbc:hive2://zdh-9:10000/default
用户名和密码都为空,直接回车;
成功进入beeline连接jdbc数据库,
执行命令查看default默认数据库和库中的表,
以及查看student表结构:
show databases;
show tables;
desc student;
退出连接:
!q
18.报错处理
User: hive is not allowed to impersonate anonymous (state=,code=0)
修改hadoop的core-site.xml中的配置文件如下,里面需要设置hive用户的代理,并且重启hdfs。
<property>
<name>hadoop.proxyuser.hive.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hive.groups</name>
<value>*</value>
</property>
Hive安装Version2.1.0的更多相关文章
- Hive安装配置指北(含Hive Metastore详解)
个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...
- hive安装--设置mysql为远端metastore
作业任务:安装Hive,有条件的同学可考虑用mysql作为元数据库安装(有一定难度,可以获得老师极度赞赏),安装完成后做简单SQL操作测试.将安装过程和最后测试成功的界面抓图提交 . 已有的当前虚拟机 ...
- CentOS7安装hive-2.1.0
环境: CentOS7 Hadoop-2.6.4,配置两个节点:master.slave1 mysql-server 过程: 下载.解压hive-2.1.0到/usr/hadoop-2.6.4/thi ...
- Hive安装与部署集成mysql
前提条件: 1.一台配置好hadoop环境的虚拟机.hadoop环境搭建教程:稍后补充 2.存在hadoop账户.不存在的可以新建hadoop账户安装配置hadoop. 安装教程: 一.Mysql安装 ...
- 【转】 hive安装配置及遇到的问题解决
原文来自: http://blog.csdn.net/songchunhong/article/details/51423823 1.下载Hive安装包apache-hive-1.2.1-bin.ta ...
- Hadoop之hive安装过程以及运行常见问题
Hive简介 1.数据仓库工具 2.支持一种与Sql类似的语言HiveQL 3.可以看成是从Sql到MapReduce的映射器 4.提供shall.Jdbc/odbc.Thrift.Web等接口 Hi ...
- HIVE安装配置
Hive简介 Hive 基本介绍 Hive 实现机制 Hive 数据模型 Hive 如何转换成MapReduce Hive 与其他数据库的区别 以上详见:https://chu888chu888.gi ...
- Hive安装与配置详解
既然是详解,那么我们就不能只知道怎么安装hive了,下面从hive的基本说起,如果你了解了,那么请直接移步安装与配置 hive是什么 hive安装和配置 hive的测试 hive 这里简单说明一下,好 ...
- hive安装详解
1.安装MYSQL simon@simon-Lenovo-G400:~$ sudo apt-get install mysql-server simon@simon-Lenovo-G400:~$ su ...
随机推荐
- What happens when more restrictive access is given to a derived class method in C++?
We have discussed a similar topic in Java here. Unlike Java, C++ allows to give more restrictive acc ...
- window 查看端口占用情况
查看哪个进程在用 netstat -aon|findstr "8080" TCP 0.0.0.0:8080 0.0.0.0:0 ...
- uni-app使用腾讯地图注意点
地图map组件使用腾讯地图自定义样式: 1:在使用地图map组件腾讯地图时,获取本地定位,经纬度转地址与地址转经纬度解析时,小程序可以直接使用.但是h5版本会报跨域问题,目前前端没有找到更好的解决方法 ...
- mysqldump备份容灾脚本
目录 一.备份脚本 环境需求 全量脚本 增量脚本 二.备份策略 三.容灾测试 准备 测试 误删除 一.备份脚本 环境需求 编辑/etc/my.cnf文件添加在[mysqld]版块下添加如下变量,添加后 ...
- Linux centos 安装Docker
安装docker需要centos7 内核3.1以上 基本上centos7以上的都支持, 然后先更新到最新 sudo yum update 然后直接安装 sudo yum install docker ...
- Asp.NetCore3.1开源项目升级为.Net6.0
概述 自从.Net6.0出来后,一直想之前开发的项目升级.Net6.0,有时想想毕竟中间还跨了个5.0版本,升级起来不知道坑大不大,最近抽时间对升级的方案做了些研究,然后将代码升级为.Net6.0.本 ...
- 选课系统V1.0
tree . . ├── bin │ ├── __init__.py │ └── start.py #启动文件 ├── conf │ ├── __init__.py │ └── set ...
- Django的安全机制 CSRF 跨站请求访问
跨站请求伪造 一.简介 django为用户实现防止跨站请求伪造的功能,通过中间件 django.middleware.csrf.CsrfViewMiddleware 来完成.而对于django中设置防 ...
- C++实现反射---RTTR库的使用
使用过C#或者Java 的童鞋,应该对这些语言提供的反射机制有所了解.所谓反射,在我看来就是在只知道一个类的名字(字符串形式)的情况下,自动创建出具体的类实例,并且能够枚举该类型拥有的属性.方法等信息 ...
- JAVA整合FlinkCDC 监控数据库表变化
版本至少jdk8 maven <!-- https://mvnrepository.com/artifact/com.alibaba.ververica/flink-connector-mysq ...