Hive安装和使用 centos7
前言
说明安装hive之前,系统已经安装好了 java,hadoop,mysql。
版本说明
java jdk1.8
haoop 3.2.2
hive 3.1.2
目前hive官网是支持hadoop3.x 版本的,hive 版本要3.x。不然安装没法使用。
hive的安装模式有2种,一种是使用自带的derby数据库,另一种是使用mysql作为元数据库。derby方式一般没人用,因为它是单用户模式。
我这里主要讲解mysql方式。
hive仅仅是一个客户端工具,不存在集群概念,因此安装的时候无需每台机器安装,哪个节点需要使用,就安装在哪个节点上。多个节点安装的时候mysql的元数据库一定要相同(即要在同一个mysql同一个库上),否则各个客户端获取的数据不一致
1.hive安装
1.下载hive
下载链接:https://downloads.apache.org/hive/hive-3.1.2/
wget https://downloads.apache.org/hive/hive-3.1.2/
解压
tar -zxvf apache-hive-3.1.2-bin.tar.gz
2.修改配置文件
1.修改环境变量,添加Hive环境变量
vi /etc/profile#hive安装目录export HIVE_HOME=/usr/local/work/hive/apache-hive-3.1.2-bin
export PATH=$PATH:$HIVE_HOME/binsource /etc/profile //应用变量更改
3.配置hive
1、在目录 /usr/local/work/apache-hive-3.1.2-bin 下创建目录 tmp 来存放hive运行过程中生成的临时文件
2、启动hadoop
start-all.sh
3、在 HDFS 上创建2个文件夹
hdfs dfs -mkdir -p /usr/local/work/hive/data
#存储数据
hdfs dfs -mkdir -p /usr/local/work/hive/warehouse
给文件增加读写权限报错:
chmod: changing permissions of '/usr/local/work/hive/flwarehouse': Cannot set permission for /usr/local/work/hive/flwarehouse. Name node is in safe mode.
解决办法:
hadoop dfsadmin -safemode leave
4、进入目录 /soft/apache-hive-2.3.6-bin/conf 创建 文件 hive-site.xml
(该目录下默认没有 hive-site.xml 文件 ,该文件可以通过复制 hive 自带的文件 hive-default.xml.template 来创建)
cd cd /usr/local/work/hive/apache-hive-3.1.2-bin/conf
cp hive-default.xml.template hive-site.xml
5、进入目录 /soft/apache-hive-2.3.6-bin/conf 创建 文件 hive-env.sh
(该目录下默认没有 hive-env.sh 文件 ,该文件可以通过复制 hive 自带的文件 hive-env.sh.template 来创建)
cd /usr/local/work/hive/apache-hive-3.1.2-bin/conf
cp hive-env.sh.template hive-env.sh
6、将 mysql-connector-java-8.0.26.jar 传输到 apache-hive-3.1.2-bin/lib 目录下
7、在mysql下,登录root用户,更改远程权限,并创建 名称 为 hive 的 数据库
#建立数据库
create database fl_hive if not exists fl_hive;#设置远程登录的权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;#刷新配置
FLUSH PRIVILEGES;
5、修改Hive 配置文件
在 /usr/local/work/hive/apache-hive-3.1.2-bin/conf 下
修改 hive-site.xml 文件,通过搜索对应配置替换你的数据。
#MySQL 连接属性
javax.jdo.option.ConnectionURL
javax.jdo.option.ConnectionDriverName
javax.jdo.option.ConnectionUsername
javax.jdo.option.ConnectionPassword
编辑这个最好吧文件拉取出来,用编辑器打开查找替换。
<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://xxx.xxx.48.130:3306/hive?useUnicode=true&serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false</value>##此处IP地址为MySQL数据库的地址,文中是用的虚拟机乙的IP地址##因为 MySQL 8.0的要求,所以此处已经添加时区;如果你是MySQL5.0等版本,可以只填写 jdbc:mysql://192.168.48.130:3306/hive
</property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.jdbc.Driver</value>##MySQL8.0版本驱动名称为 com.mysql.cj.jdbc.Driver ;如果你是MySQL5.0等版本,驱动名称为com.mysql.jdbc.Driver
</property><property>
## 配置用户名<name>javax.jdo.option.ConnectionUserName</name><value>root</value>
</property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value>##此处密码因人而异
</property>
#Hive 在 HDFS 上工作路径
hive.exec.scratchdir
#Hive 在存储数据时在 HDFS 中的路径
hive.metastore.warehouse.dir
<property><name>hive.exec.scratchdir</name><value>/usr/local/work/date/soft/apache-hive-3.1.2-bin</value>
</property><property><name>hive.metastore.warehouse.dir</name><value>/usr/local/work/hive/warehouse</value>
</property>
#HIve 临时目录路径
hive.exec.local.scratchdir
hive.downloaded.resources.dir
hive.server2.logging.operation.log.location
# 没有的文件,自己手动创建 比如 在 /usr/local/work/date/soft 创建 tmp<property><name>hive.exec.local.scratchdir</name><value>/usr/local/work/date/soft/apache-hive-3.1.2-bin/tmp/${user.name}</value>
</property><property><name>hive.downloaded.resources.dir</name><value>/usr/local/work/date/soft/apache-hive-3.1.2-bin/tmp/${hive.session.id}_resources</value>
</property><property><name>hive.server2.logging.operation.log.location</name><value>/usr/local/work/date/soft/apache-hive-3.1.2-bin/tmp/log/operation_logs</value>
</property>
6、初始化
cd /usr/local/work/hive/apache-hive-3.1.2-bin/binschematool -dbType mysql -initSchema
编译完成
查看数据库会有这么写表
7 运行hive
cd /usr/local/work/hive/apache-hive-3.1.2-bin/bin./hive
2、安装途中遇到的问题
1.guava 在 hadoop 和hive 的版本不一致。
java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument
解决办法:
保持都为高版本的。
删除hive的lib下面的guava-19.0.jar,然后拷贝hadoop下面的guava-27.0.jar即可。
2、java.lang.RuntimeException: com.ctc.wstx.exc.WstxParsingException: Illegal character entity: expansion character (code 0x8
解决办法:
这是配置文件的bug.
行的注释掉 或者删除描述。
3.通过 显示启动 可以看到具体的启动信息,用来排错。
hive --service metastore &
访问hive的web ui 界面。
需要执行命令
./hive --service hiveserver2
http://ip:10002/
Hive安装和使用 centos7相关推荐
- centos7 hadoop+hive 安装
准备四台虚拟机 虚拟机安装 1.创建新虚拟机 2.点击典型安装(推荐) 3.选择中文,点击自己分区 # 分区配置(JD使用) /boot 200M swap 512M # 本机内存不够用了,用swap ...
- 学习笔记Hive(二)—— Hive安装配置
一.环境介绍 环境 描述 4个Linux操作系统虚拟机 使用centos7镜像配置 安装java 1.8以上版本 安装Hadoop 2.6.5以上版本 安装MySQL 5.1以上版本 二.安装MySQ ...
- Hive安装和配置(利用SecureCRT)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Hive安装和配置 前提 一.开启Hadoop集群 1.配置hadoop 2.启动hadoop 3.验证启动 二.安装和配置hive ...
- hadoop生态下hive安装过程
Hive的安装部署 1.首先在Linux本地,新建/data/hive1目录,用于存放所需文件 (1)mkdir -p /data/hive1 (2)切换目录到/data/hive1下,上传apach ...
- Hadoop学习之第七章节:Hive安装配置
环境要求: mysql hadoop hive版本为:apache-hive-1.2.1-bin.tar 1.设置hive用户 进入mysql命令行,创建hive用户并赋予所有权限: mysql -u ...
- Hive安装问题简述
本文简要介绍Hive安装过程中的常见问题:版本下载地址.版本依赖.依赖jar包.重要的是,记录Hive的元数据库手动初始化时报错的解决方案并对其进行反思 Hive的元数据库手动初始化 当使用hiv ...
- Hive安装及常用交互命令
Hive基本概念及常用交互命令 目录 Hive安装地址 Hive安装部署 将本地文件导入Hive案例 MySQL安装 Hive元数据配置到MySQL Hive常用交互命令 Hive其他命令操作 Hiv ...
- hive安装测试及Hive 元数据的三种存储方式
一 hive安装测试 1.下载解压 tar -xf hive-x.y.z.tar.gz(本次安装为hive-0.8.1.tar.gz) 将解压后的hive-0.8.1文件放在系统的/home/had ...
- 进阶4:hive 安装
安装包: apache-hive-2.1.1-bin.tar.gz 安装步骤: 1.上传 apache-hive-2.1.1-bin.tar.gz 到linux; 2.解压文件: tar zxvf ...
最新文章
- 【Java代码实现】递归两大经典问题-----“汉诺塔问题” 与 “青蛙跳台阶问题” 讲解
- 什么是数据库范式(NF)?从一范式到五范式分别是什么?
- 不讲武德,拿到户口后立马辞职...
- linux修改path路径
- OCM备考 一、Server config 之管理表空间
- 日志管理(一):slf4j原理简单介绍
- ie6 z-index bug
- 学了这么多年的人工智能居然还不了解它?
- 如何根据configure.ac和Makefile.am为开源代码产生当前平台的Makefile
- php 获取文件名 行号,PHP – 找到文件中的字符串,然后显示它的行号
- 数百Windows XP系统文件一一诠释(转)
- 华为手表广告营销案例和广告策划案例PPT模板
- C语言学习方法、学习平台及项目推荐
- JAVA基础知识之BufferedWriter流
- 我的ubuntu论坛账号
- 修正米勒编码matlab,修正米勒编码信源解码电路及其解码方法和节能控制方法
- bsearch()快搜函数
- 电脑上可以连接网线可以上网,但是WiFi没有了
- PowerBI实用技巧:案例一(动态切换坐标轴列值,例如交叉表头、列,图表坐标轴等)
- WPS插件 - 保存Unicode编码的CSV文件
热门文章
- OpenCV翻译总结
- python财务预算分析_财码Python管理会计小实验—弹性预算vs固定预算
- Raft算法国际论文全翻译
- android ar物体识别_拍照救命稻草 AR物体识别崛起_手机生活新闻-中关村在线
- 用户体验设计、交互设计、产品设计的联系和区别
- 从AX2012系统批量生成CSV格式数据
- 【北京】字节跳动50W(20-40K*15薪)测试开发工程师岗内推,这个岗位超适合你。
- C语言实现几种基本的进制转换
- jdk api 1.8
- 安装rtx时报错因计算机中丢失lo,RTX登录时提示“please install msxml5 or later”问题怎么解决...