Hive之[Hive]详细安装步骤

hive 是依赖hadoop中的hdfs作为存储,依赖mysql管理元数据

master节点

集群环境
master  192.168.204.130
slave1  192.168.204.131
slave2  192.168.204.132
组件下载地址
https://archive.apache.org/dist/hive/hive-1.2.2/
或
链接: https://pan.baidu.com/s/1DrvGTGn4_OFxO9WLmljJ_g 提取码: 1234 

下载完后上传至虚拟机master的/usr/local/src文件夹下;解压:

tar -zxvf apache-hive-1.2.2-bin.tar.gz
修改hive运行环境配置文件:hive-env.sh
cd /usr/local/src/apache-hive-1.2.2-bin/conf
mv hive-env.sh.template hive-env.sh
vim hive-env.sh

添加如下内容:

export JAVA_HOME=/usr/local/src/jdk1.8.0_172
export HADOOP_HOME=/usr/local/src/hadoop-2.6.1
export HIVE_HOME=/usr/local/src/apache-hive-1.2.2-bin
export HIVE_CONF_DIR=/usr/local/src/apache-hive-1.2.2-bin/conf
创建hive-site.xml文件
touch hive-site.xml
vim hive-site.xml

添加如下内容:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property><property><name>hive.metastore.warehouse.dir</name><value>hdfs://master:9000/hive/warehouse</value></property><property><name>hive.exec.scratchdir</name><value>hdfs://master:9000/hive/tmp</value></property><property><name>hive.querylog.location</name><value>/usr/hive/log</value><description>设置hive job日志存储位置</description></property><property><name>hive.cli.print.header</name><value>true</value><description>设置显示列名</description></property><property><name>hive.resultset.use.unique.column.names</name><value>false</value><description>增加列名可读性</description></property><property><name>hive.exec.dynamic.partition</name><value>true</value><description>开启动态分区</description></property><property><name>hive.exec.dynamic.partition.mode</name><value>nonstrict</value><description>设置动态分区模式为非严格模式</description></property><property><name>hive.enforce.bucketing</name><value>true</value><description>是否启用bucketing,写入table数据</description></property>
<!--<property><name>hive.metastore.uris</name><value>thrift://master:9083</value><description>元数据服务</description></property>
-->
<!--test flume to hive <property><name>hive.support.concurrency</name><value>true</value><description>是否支持并发,默认是false</description></property><property><name>hive.txn.manager</name><value>org.apache.hadoop.hive.ql.lockmgr.DbTxnManager</value><description>打开一部分事务支持协同配置</description></property><property><name>hive.compactor.initiator.on</name><value>true</value><description>运行启动程序和清除线程,用于打开所需参数的完整列表事务</description></property><property><name>hive.compactor.worker.threads</name><value>1</value><description>增加工作线程的数量将减少花费的时间</description></property>
-->
<!--设置hiveserver2链接参数--><property><name>yarn.app.mapreduce.am.command-opts</name><value>-Djava.net.preferIPv4Stack=true -Xmx200m</value></property><property><name>mapreduce.map.java.opts</name><value>-Djava.net.preferIPv4Stack=true -Xmx200m</value></property><property><name>mapreduce.reduce.java.opts</name><value>-Djava.net.preferIPv4Stack=true -Xmx200m</value></property>
</configuration>
增加环境变量

Master节点

vim ~/.bashrc

添加以下两行:

export HIVE_HOME=/usr/local/src/apache-hive-1.2.2-bin
export PATH=$PATH:${HIVE_HOME}/bin

刷新环境变量,让配置生效:

source ~/.bashrc
修改文件夹所属权限(包含master、slave1和slave2三个节点)

查看文件夹所属权限

cd /usr/local/src/
[root@master src]# ll
总用量 0
drwxr-xr-x  8 root  root  159 2月  10 19:00 apache-hive-1.2.2-bin
drwxr-xr-x 12 10011 10011 183 2月   8 16:51 hadoop-2.6.1
drwxr-xr-x  7    10   143 245 7月   7 2018 jdk1.8.0_181

修改

[root@master src]# chown -R root:root hadoop-2.6.1 jdk1.8.0_181
[root@master src]# ll
总用量 0
drwxr-xr-x  8 root root 159 2月  10 19:00 apache-hive-1.2.2-bin
drwxr-xr-x 12 root root 183 2月   8 16:51 hadoop-2.6.1
drwxr-xr-x  7 root root 245 7月   7 2018 jdk1.8.0_181
替换掉Hadoop的jline包

删除Hadoop下的jline包

cd /usr/local/src/hadoop-2.6.1/share/hadoop/yarn/lib/
rm -rf jline-0.9.94.jar

复制hive下的jline包到hadoop的lib文件夹

cd /usr/local/src/apache-hive-1.2.2-bin/lib
cp jline-2.12.jar $HADOOP_HOME/share/hadoop/yarn/lib/
安装MySQL连接工具

master节点
下载安装包

链接: https://pan.baidu.com/s/1ZJsntsUqIxd8HuJibLlPdw 提取码: 1234 

找到mysql-connector-java-5.1.44.tar,
下载之后上传到虚拟机/usr/local/src文件夹下, 解压:

tar xvf mysql-connector-java-5.1.44.tar

复制链接库文件:

cd mysql-connector-java-5.1.45
cp mysql-connector-java-5.1.45-bin.jar $HIVE_HOME/lib/
初始化元数据库
$HIVE_HOME/bin/schematool -dbType mysql -initSchema
启动Hive服务

hadoop集群启动之后,需要等待一会,等待hadoop退出安全模式,退出之后才可以启动hive
检查hadoop集群状态:

hadoop dfsadmin -report
如果有:Safe mode is ON的时候,不可以启动hive,需要等待一会

启动hive

[root@master hadoop-2.6.1]# hiveLogging initialized using configuration in jar:file:/usr/local/src/apache-hive-1.2.2-bin/lib/hive-common-1.2.2.jar!/hive-log4j.properties
hive> show databases;
OK
database_name
default
Time taken: 0.666 seconds, Fetched: 1 row(s)
hive> exit;
[root@master hadoop-2.6.1]# 

参考1
参考2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/69494.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《艾尔登法环》运行时弹窗“由于找不到vcruntime140.dll,无法继续执行代码”要怎么解决?

宝子们&#xff0c;是不是在玩《艾尔登法环》的时候&#xff0c;突然弹出一个提示&#xff1a;“由于找不到vcruntime140.dll&#xff0c;无法继续执行代码”&#xff1f;这可真是让人着急上火&#xff01;别慌&#xff0c;今天就给大家唠唠这个文件为啥会丢&#xff0c;还有怎…

LabVIEW商业软件开发

在商业软件开发和仪器自动测试领域&#xff0c;LabVIEW以其图形化编程方式、高效的数据采集能力和强大的硬件集成优势&#xff0c;成为众多工程项目的核心开发工具。然而&#xff0c;商业软件的开发远不止编写代码和实现功能那么简单&#xff0c;尤其是在仪器自动测试领域&…

第40天:Web开发-JS应用VueJS框架Vite构建启动打包渲染XSS源码泄露代码审计

#知识点 1、安全开发-VueJS-搭建启动&打包安全 2、安全开发-VueJS-源码泄漏&代码审计 一、Vue搭建创建项目启动项目 1、Vue 框架搭建->基于nodejs搭建&#xff0c;安装nodejs即可 参考&#xff1a;https://cn.vuejs.org/ 已安装18.3或更高版本的Node.js 2、Vue 创建…

PL/SQL块结构

目录 一、声明部分&#xff08;declare&#xff09; 二、执行部分&#xff08;begin end&#xff09; 三、异常处理部分 &#xff08;Exception end&#xff09; 四、代码示例 PL/SQL&#xff08;Procedural Language/Structured Query Language&#xff09;是Oracle数据库…

6、使用one-api管理统一管理大模型,并开始使用本地大模型

文章目录 本节内容介绍集中接入&#xff1a;将大模型统一管理起来当使用了大模型代理大模型代理示例 开源模型&#xff1a;如何使用Hugging Face上的模型modelscope使用 pipeline 调用模型用底层实现调用模型流式输出 如何在项目中使用开源模型使用 LangChain使用集中接入开始使…

Winform开发框架(蝇量级) MiniFramework V2.1

C/S框架网与2022年发布的一款蝇量级开发框架&#xff0c;适用于开发Windows桌面软件、数据管理应用系统、软件工具等轻量级软件&#xff0c;如&#xff1a;PLC上位机软件、数据采集与分析软件、或企业管理软件&#xff0c;进销存等。适合个人开发者快速搭建软件项目。 适用开发…

2.10学习总结

Dijkstra算法求取最短路径 注&#xff1a;迪杰斯特拉算法并不能直接生成最短路径&#xff0c;但是算法将最短路径信息保存在dist数组和path数组中。 #include <stdio.h> #include <stdlib.h> #define VertexMax 20 //最大顶点数为20 #define MaxInt 32767 //表示…

【漫话机器学习系列】087.常见的神经网络最优化算法(Common Optimizers Of Neural Nets)

常见的神经网络优化算法 1. 引言 在深度学习中&#xff0c;优化算法&#xff08;Optimizers&#xff09;用于更新神经网络的权重&#xff0c;以最小化损失函数&#xff08;Loss Function&#xff09;。一个高效的优化算法可以加速训练过程&#xff0c;并提高模型的性能和稳定…

深度学习 视频推荐

以下为你呈现一个基于深度学习实现视频推荐的简化代码示例。这里我们使用的是协同过滤思想结合神经网络的方式,借助 TensorFlow 和 Keras 库来构建模型。在这个示例中,假设已有用户对视频的评分数据,目标是预测用户对未评分视频的评分,进而为用户推荐可能感兴趣的视频。 1…

蓝桥杯算法日记|贪心、双指针

3412 545 2928 2128 贪心学习总结&#xff1a; 1、一般经常用到sort&#xff08;a&#xff0c;an&#xff09;&#xff1b;【a[n]】排序&#xff0c;可以给整数排&#xff0c;也可以给字符串按照字典序排序 2、每次选最优 双指针 有序数组、字符串、二分查找、数字之和、反转字…

傅里叶公式推导(一)

文章目录 三角函数系正交证明图观法数学证明法计算当 n不等于m当 n等于m&#xff08;重点&#xff09; 其它同理 首先要了解的一点基础知识&#xff1a; 三角函数系 { sin ⁡ 0 , cos ⁡ 0 , sin ⁡ x , cos ⁡ x , sin ⁡ 2 x , cos ⁡ 2 x , … , sin ⁡ n x , cos ⁡ n x ,…

数据结构-find()-判断字符串s1中是否包含字符串s2

find()库函数 #include <iostream> using namespace std;bool check(string s1,string s2){int n s1.size();int m s2.size();if(n0||m0 || n<m){return false;}if(s1.find(s2) ! string::npos){return true;}else{return false;} }int main () {string a "…

1. 构建grafana(版本V11.5.1)

一、grafana官网 https://grafana.com/ 二、grafana下载位置 进入官网后点击downloads&#xff08;根据自己的需求下载&#xff09; 三、grafana安装&#xff08;点击下载后其实官网都写了怎么安装&#xff09; 注&#xff1a;我用的Centos&#xff0c;就简略的写下我的操作步…

macOS 上部署 RAGFlow

在 macOS 上从源码部署 RAGFlow-0.14.1&#xff1a;详细指南 一、引言 RAGFlow 作为一款强大的工具&#xff0c;在人工智能领域应用广泛。本文将详细介绍如何在 macOS 系统上从源码部署 RAGFlow 0.14.1 版本&#xff0c;无论是开发人员进行项目实践&#xff0c;还是技术爱好者…

stm32小白成长为高手的学习步骤和方法

我们假定大家已经对STM32的书籍或者文档有一定的理解。如不理解&#xff0c;请立即阅读STM32的文档&#xff0c;以获取最基本的知识点。STM32单片机自学教程 这篇博文也是一篇不错的入门教程&#xff0c;初学者可以看看&#xff0c;讲的真心不错。 英文好的同学&#xf…

计算机网络面经

文章目录 基础HTTPHTTP报文结构 (注意)RPC和http的区别TCPTCP报文结构(注意)IP基础 HTTP HTTP报文结构 (注意) 请求行:请求方法get/post,url,http版本 请求头:用户标识,请求体长度,类型,cookie 请求体:内容 状态行:状态码,状态消息、(http版本) 响应头:内…

快速集成DeepSeek到项目

DeepSeek API-KEY 获取 登录DeekSeek 官网&#xff0c;进入API 开放平台 2. 创建API-KEY 复制API-KEY进行保存&#xff0c;后期API调用使用 项目中集成DeepSeek 这里只展示部分核心代码&#xff0c;具体请查看源码orange-ai-deepseek-biz-starter Slf4j AllArgsConstructo…

PHP函数介绍—get_headers(): 获取URL的响应头信息

概述&#xff1a;在PHP开发中&#xff0c;我们经常需要获取网页或远程资源的响应头信息。PHP函数get_headers()能够方便地获取目标URL的响应头信息&#xff0c;并以数组形式返回。本文将介绍get_headers()函数的用法&#xff0c;以及提供一些相关的代码示例。 get_headers()函…

保姆级教程Docker部署Zookeeper模式的Kafka镜像

目录 一、安装Docker及可视化工具 二、Docker部署Zookeeper 三、单节点部署 1、创建挂载目录 2、命令运行容器 3、Compose运行容器 4、查看运行状态 5、验证功能 四、部署可视化工具 1、创建挂载目录 2、Compose运行容器 3、查看运行状态 一、安装Docker及可视化工…

Docker容器访问外网:启动时的网络参数配置指南

在启动Docker镜像时,可以通过设置网络参数来确保容器能够访问外网。以下是几种常见的方法: 1. 使用默认的bridge网络 Docker的默认网络模式是bridge,它会创建一个虚拟网桥,将容器连接到宿主机的网络上。在大多数情况下,使用默认的bridge网络配置即可使容器访问外网。 启动…