当前位置: 首页 > news >正文

【大数据工具】Hive 安装

Hive 环境搭建与基本使用

Hive 安装包下载地址:https://dlcdn.apache.org/hive/

注:安装 Hive 前要先安装好 MySQL

1. MySQL 安装

MySQL 安装包下载地址:https://dev.mysql.com/downloads/mysql/archives/community/MySQL%20::%20Download%20MySQL%20Community%20Serverhttps://dev.mysql.com/downloads/mysql/archives/community/

说明:三台节点都安装

  • 检查 MySQL 和 mariadb 是否已安装过,有就删除,没有则忽略
rpm -qa|grep mysql
rpm -e mysql-libs-5.1.73-8.el6_8.x86_64 --nodeps
rpm -qa|grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
  • 删除 MySQL 分散的文件夹
whereis mysql
rm -rf /usr/lib64/mysql
find / -name mysql
rm -rf 
  • 准备安装包 MySQL-5.6.27-1.linux_glibc2.5.x86_64.rpm-bundle.tar, 上传,解压,命令:
tar -xvf MySQL-5.6.27-1.linux_glibc2.5.x86_64.rpm-bundle.tar
  • 安装服务端:
rpm -ivh MySQL-server-5.6.27-1.linux_glibc2.5.x86_64.rpm
  • 安装客户端:
rpm -ivh MySQL-client-5.6.27-1.linux_glibc2.5.x86_64.rpm
  • 启动MySQL:
service mysql start
  • 获取初始密码:
cat /root/.mysql_secret
  • 登录MySQL:
mysql -uroot -pxxx
  • 修改密码:
mysql> set PASSWORD=PASSWORD('111111');
  • 退出重新登录,验证新密码是否设置成功:
mysql> exit
mysql -uroot -p111111
  • 增加远程登录权限:
mysql> grant all privileges on *.* to 'root'@'%' identified by '111111' with grant option;
mysql> flush privileges;

至此 MySQL 安装成功

2. Hive 安装

说明:安装到一个节点即可

1. Hive1 安装

  • 安装 MySQL

  • 上传软件包 apache-hive-1.2.1-bin.tar.gz

  • 解压安装包并更名:

tar -zxvf apache-hive-1.2.1-bin.tar.gz
mv apache-hive-1.2.1-bin hive
  • 修改配置文件,目录下面没有,直接vim就可以:
[root@hadoop0 ~]# cd /software/hive/conf/
[root@hadoop0 conf]# vim hive-site.xml
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=true</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>111111</value></property><property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value></property>
</configuration>

一定要记得加入 MySQL 驱动包 mysql-connector-java-5.1.40-bin.jar 该 jar 包放置在 hive 的根路径下的 lib 目录

安装完成,配置环境变量

vi /etc/profile
export HIVE_HOME=/software/hive
export PATH=$PATH:$HIVE_HOME/bin
  • 验证 Hive 安装
[root@hadoop0 lib]# hive --help
  • 初始化元数据库
schematool -dbType mysql -initSchema
  • 启动 Hive 客户端(直接使用 hive 启动也行)
[root@hadoop0 bin]# hive --service cli>
  • 退出
quit; 或 exit;

2. Hive2 安装

上传安装包 apache-hive-2.3.8-bin.tar.gz

解压安装包

tar -zxvf apache-hive-2.3.8-bin.tar.gz
mv apache-hive-2.3.8-bin hive2

修改配置文件(目录下面没有,直接vim就可以了)

cd hive2/conf
vi hive-site.xml # 将下面内容写入hive-site.xml文件中
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hivedb2?createDatabaseIfNotExist=true</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>111111</value></property><property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value></property>
</configuration>

说明:

  • 配置连接器信息,设置 MySQL 作为元数据存储的位置

    • localhost 表示:MySQL 和 Hive 客户端装在 Hadoop0 上
    • 若 MySQL 和 Hive 不装在一起,则 “localhost” 改为安装 MySQL 的机器 ip
  • hivedb2 表示:是之后初始化后,在MySQL里生成的元数据库的名字

<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hivedb2?createDatabaseIfNotExist=true</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>111111</value>
</property>
  • 配置存到 HDFS 上默认路径的信息
<property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value>
</property>

将 MySQL 驱动包 mysql-connector-java-5.1.40-bin.jar 放到 hive 的根路径下的 lib 目录

修改环境变量

vi /etc/profile
export HIVE_HOME=/software/hive2
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile

验证Hive安装:

hive --help

初始化元数据(当 Hive 依赖普通分布式 Hadoop 集群,不做初始化也是 OK 的,当 Hive 第一次启动的时候会自动进行初始化):

schematool -dbType mysql -initSchema

3. 启动 Hive 的两个前提

1. MySQL 元数据库已开启

[root@hadoop0 ~]# service mysql statusSUCCESS! MySQL running (2022)

2. Hadoop 已启动

[root@hadoop0 ~]# jps
23106 Jps
2787 NameNode
3115 ResourceManager
7119 RunJar

启动 Hive 客户端:hive

退出 Hive 客户端:quit; exit;

4. Hive 重装

Hive 重装需要注意

  • 保证之前 Hive 数据仓库的默认的 hdfs 目录不存在(删掉或创建新的)
  • 保证元数据库不存在,或换一个名字

基于同一个 Hadoop 集群搭建多个不同的 Hive 数据仓库

  • 保证默认的仓库路径不一致
  • 保证元数据库的路径不一致

相关文章:

【大数据工具】Hive 安装

Hive 环境搭建与基本使用 Hive 安装包下载地址&#xff1a;https://dlcdn.apache.org/hive/ 注&#xff1a;安装 Hive 前要先安装好 MySQL 1. MySQL 安装 MySQL 安装包下载地址&#xff1a;https://dev.mysql.com/downloads/mysql/archives/community/MySQL%20::%20Downloa…...

Android9.0 iptables用INetd实现app某个时间段禁止上网的功能实现

1.前言 在9.0的系统rom定制化开发中,在system中netd网络这块的产品需要中,会要求设置app某个时间段禁止上网的功能,liunx中iptables命令也是比较重要的,接下来就来在INetd这块实现app某个时间段禁止上网的的相关功能,就是在系统中只能允许某个app某个时间段禁止上网,就是…...

webpack.config.js基础配置(五大核心属性)

在上一节webpack零基础入门中我们在安装完webpack 和 webpack-cli依赖之后&#xff0c;直接通过npx webpack ./src/main.js --modedevelopment的方式对src下的js文件进行了打包。 其中的 ./src/main.js: 指定 Webpack 从 main.js 文件开始打包&#xff0c;不但会打包 main.js&a…...

【华为OD机试】阿里巴巴找黄金宝箱(IV)【2023 B卷|200分】

【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地, 藏宝地有编号从0-N的箱子,每个箱子上面有一个数字,箱子排列成一个环, 编号最大的箱子的下一个是编号为0的箱…...

Qt6 C++基础入门2 文件结构与信号和槽

目录 标准文件结构widget.hwidget.cppmain.cpppro 文件 信号与槽自定义信号connect 的两种方式 标准文件结构 widget.h widget 对象的头文件 一般会直接在头文件导入所有后续在 cpp 文件内用到的类&#xff0c;所以 include 基本都会写在这里 // 头文件标志起始 #ifndef WID…...

常用模拟低通滤波器的设计——契比雪夫II型滤波器

常用模拟低通滤波器的设计——契比雪夫II型滤波器 切比雪夫 II 型滤波器的振幅平方函数为&#xff1a; 式中&#xff0c;为有效带通截止频率&#xff0c; 是与通带波纹有关的参量&#xff0c; 大&#xff0c;波纹大&#xff0c;&#xff1b; 为 N 阶契比雪夫多项式。 在 Matl…...

SSM 如何使用 Redis 实现缓存?

SSM 如何使用 Redis 实现缓存&#xff1f; Redis 是一个高性能的非关系型数据库&#xff0c;它支持多种数据结构和多种操作&#xff0c;可以用于缓存、队列、计数器等场景。在 SSM&#xff08;Spring Spring MVC MyBatis&#xff09;开发中&#xff0c;Redis 可以用来实现数…...

uin-app如何获取微信昵称和头像的博客

在很多应用中都会使用到微信登录功能&#xff0c;这样可以方便用户快速地完成注册、登录等操作。本文将介绍如何通过uin-app获取微信用户的昵称和头像信息。 第一步&#xff1a;准备开发环境 首先&#xff0c;需要下载并安装QQ精简版开发工具&#xff08;uin-app&#xff09;…...

第六十七天学习记录:对陈正冲编著《C 语言深度解剖》中关于变量命名规则的学习

最近开始在阅读陈正冲编著的《C 语言深度解剖》&#xff0c;还没读到十分之一就感觉收获颇多。其中印象比较深刻的是其中的变量的命名规则。 里面提到的不允许使用拼音正是我有时候会犯的错。 因为在以往的工作中&#xff0c;偶尔会遇到时间紧迫的情况。 而对于新增加的变量不知…...

matlab 计算点云的线性指数

目录 一、算法原理二、代码实现三、结果展示一、算法原理 选取当前点 p i ( x , y , z ) p_{i}(x,y,z) p<...

SpringBoot集成ElasticSearch

文章目录 前言一、ElasticSearch本地环境搭建二、SpringBoot整合ElasticSearch1.pom中引入ES依赖2.application.yaml配置elasticsearch3.ElasticSearchClientConnect连接ES客户端工具类4.ElasticSearchResult封装响应结果5.Person实体类6.Person实体类7.ElasticsearchControlle…...

分治入门+例题

目录 &#x1f947;2.3.2 合并排序 &#x1f947;2.3.3 快速排序 &#x1f33c;P1010 [NOIP1998 普及组] 幂次方 &#x1f333;总结 形象点&#xff0c;分治正如“凡治众如治寡&#xff0c;分数是也”&#xff0c;管理少数几个人&#xff0c;即可统领全军 本质&#xff…...

剑指offer打卡

这里写目录标题 day1 二叉树和为某一路径day2复杂链表的复刻day3二叉搜索树与双向链表day4数字排列day5找出出现次数超过一半的次数day6 二进制中1的个数day7 二叉树的最近公共祖先day8 字符串转换为整数day9 构建乘积数组day10不用加减乘除的加法day11求12....nday11 股票的最…...

运维实用脚本整理

运维实用脚本整理 本文脚本仅供参考运维排查问题思路运维排查问题的方法和命令&#xff08;1&#xff09;尽可能搞清楚问题的前因后果&#xff08;2&#xff09;有谁在?&#xff08;3&#xff09;之前发生了什么?&#xff08;4&#xff09; 现在在运行的进程是啥?&#xff0…...

INT8 中的稀疏性:加速的训练工作流程和NVIDIA TensorRT 最佳实践

INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践 文章目录 INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践结构稀疏量化在 TensorRT 中部署稀疏量化模型的工作流程案例研究&#xff1a;ResNet-34要求第 1 步&#xff1a;…...

隧道模式HTTP代理使用代码示例

以下是使用Python实现隧道模式HTTP代理的代码示例&#xff1a; python import socket def handle_client(client_socket): # 接收客户端请求 request client_socket.recv(4096) # 解析请求头&#xff0c;获取目标主机和端口号 host request.split(b\r\n)[1].sp…...

翻筋斗觅食海鸥优化算法-附代码

翻筋斗觅食海鸥优化算法 文章目录 翻筋斗觅食海鸥优化算法1.海鸥优化算法2. 改进海鸥优化算法2.1 非线性参数 &#xff21; 策略2.2 翻筋斗觅食策略 3.实验结果4.参考文献5.Matlab代码6.python代码 摘要&#xff1a;针对基本海鸥优化算法(SOA)在处理复杂优化问题中存在低精度、…...

K8S常见应用场景(六)

Kubernetes 是一个可移植的、可扩展的开源平台&#xff0c;用于管理容器化的工作负载和服务&#xff0c;可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。 Kubernetes 这个名字源于希腊语&#xff0c;意为“…...

《不抱怨的世界》随记

*不抱怨的世界 * 1.天才只有三件事&#xff1a;我的事&#xff0c;他的事&#xff0c;老天的事。抱怨自己的的人&#xff0c;应该试着学习接纳自己&#xff1b;抱怨他人的人&#xff0c;应该试着把抱怨转成请求&#xff1b;抱怨老天的人么&#xff0c;请试着用祈祷的方式来诉求…...

2.2 利用MyBatis实现CRUD操作

一、准备工作 打开MyBatisDemo项目 二、查询表记录 1、在映射器配置文件里引入结果映射元素 在UserMapper.xml文件里创建结果映射元素 将UserMapper接口里抽象方法上的注解暂时注释掉 运行TestUserMapper测试类里的testFindAll()测试方法&#xff0c;查看结果 2、添加…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

tomcat入门

1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效&#xff0c;稳定&#xff0c;易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...