CentOS7 Hive2.3.8安装
CentOS7 Hive2.3.8 安装
建议从头用我的博客,如果用外教的文件到 一、9)步骤了,就用他的弄完,数据库不一样,在9步骤前还能继续看我的
一、 安装MySQL
0.0)查询mariadb,有就去0.1),没有就不管直接去1)
rpm -qa | grep mariadb
0.1)卸载mariadb
rpm -e --nodeps [查询出来的内容]
1) 下载mysql:
sudo yum localinstall https://repo.mysql.com//mysql80-community-release-el7-5.noarch.rpm
2) 安装Mysql:
sudo yum install mysql-community-server
3) 开启Mysql服务:
systemctl start mysqld.service
A. 可能遇到的问题1:
输这个解决:
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
B. 可能遇到的问题2:
输这个解决:
sudo yum install mysql-server --nogpgcheck
4) 检查Mysql服务运行状态
service mysqld status
5) 查询Mysql临时密码以进入Mysql里面
grep "A temporary password" /var/log/mysqld.log
图片临时码为f0155f&dA4Ne
6) 输入以下命令,后面输密码的时候输入你屏幕里出来的临时密码
输密码用手敲不要复制粘贴
mysql –u root -p
然后会弹出下面这个内容在:后面手敲密码就好,输密码的时候看不见
‘
Enter password:f0155f&dA4Ne
7)更改Mysql密码,最好和我一样,涉及到后面Hive配置
ALTER user 'root'@'localhost' IDENTIFIED BY 'Root123!';
现在进入Mysql密码是 Root123!
8)将表的所有操作权限赋予root用户,并让root用户授权其他用户。
GRANT all ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
9) Mysql数据库配置
a. 创建一个hivedb数据库:
create database hivedb;
b. 使用数据库mysql:
use mysql;
c. 输入命令看配置
select host, user, authentication_string, plugin from user;
我们需要一个 hiveuser 对应 % 的用户,所以加一个
CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'Root123!';
加好了,查看一下,就有% hiveuser 的用户了
select host, user, authentication_string, plugin from user;
要是太长了串行了可以省略点查看
select host, user from user;
f. 给hiveuser授权一下
GRANT ALL ON *.* TO 'hiveuser'@'%';
g. 手动更新配置:
flush privileges;
二、安装 Hive:
1)把apache-hive-2.3.8-bin.tar.gz 下载后 用mobaxterm放到 /tools文件夹
链接:https://pan.baidu.com/s/1NBplQ4GYGfsa25aSK7I8OQ?pwd=vzji
提取码:vzji
–来自百度网盘超级会员V6的分享
2)解压文件
tar -zvxf /tools/apache-hive-2.3.8-bin.tar.gz -C /training/
3)进入 /training 文件夹
cd /training
重命名移动文件夹为hive
mv apache-hive-2.3.8-bin hive
4) 设置环境变量
vi ~/.bash_profile
加进去
export HIVE_HOME=/training/hive
export PATH=$PATH:$HIVE_HOME/bin
:wq 保存退出后,更新环境变量文件
source ~/.bash_profile
======================================================================
5) Hive配置文件更改
进入配置文件夹
cd training/hive/conf
复制备份hive-env.sh.template并命名为hive-env.sh
cp hive-env.sh.template hive-env.sh
复制备份hive-default.xml.template并命名为hive-site.xml
cp hive-default.xml.template hive-site.xml
6) 配置 hive-site.xml,这个文件内容特别多,所以一次性删光了再往里面加东西
进入文件
vi hive-site.xml
直接键盘敲6000dd,此命令意思是删除6000行,不要复制
6000 dd
如果还没删空,就多来几次6000dd
删空后加入以下内容,注意复制进去的时候不要少了>符号之类的小错误,此文件涉及到之前设置的密码Root123!,如果你不一样,记得改
#Enter the insert mode by pressingi and then copy this code to the file and save and exit using- :wq.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- WARNING!!! This file is auto generated for documentation purposes ONLY! -->
<!-- WARNING!!! Any changes you make to this file will be ignored by Hive. -->
<!-- WARNING!!! You must make your changes in hive-site.xml instead. -->
<!-- Hive Execution Parameters -->
<property>
<name>hive.default.fileformat</name>
<value>TextFile</value>
</property>
<property>
<!--The port is changed to your own port. Here is the onhive database in the connection database. If not, create it later -->
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/metastore</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<!--The latest version of the jar package to connect to MySQL All write com.mysql.cj.jdbc.Driver, if it is the old version with com.mysql.jdbc.Driver-->
<value>com.mysql.cj.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<!--Connect to MySQL username-->
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>username to use against metastore database</description>
</property>
<property>
<!--Connect MySQL password -->
<name>javax.jdo.option.ConnectionPassword</name>
<value>Root123!</value>
<description>password to use against metastore database</description>
</property>
</configuration>
7)配置 hive-env.sh
进入文件
vi hive-env.sh
在文件最底下加,注意hadoop版本和java版本以及路径是否和我一样,不一样记得换
export HADOOP_HOME=/training/hadoop-3.3.0
export HIVE_CONF_DIR=/training/hive/conf
export HIVE_AUX_JARS_PATH=/training/hive/lib
export JAVA_HOME=/training/jdk1.8.0_144
export HIVE_HOME=/training/hive
8)把 MySQL的 connected jar文件放到 hive/lib 文件夹下
链接:https://pan.baidu.com/s/1gD2M8Gr9IFOkOA4EghfWLg?pwd=32r8
提取码:32r8
–来自百度网盘超级会员V6的分享
9)进入 /training/hadoop-3.3.0/share/hadoop/hdfs/lib/
找到这个瓜娃27,把它下载到桌面上留着
10)进入 /training/hive/lib
把瓜娃27放进去,并且删除这个瓜娃14
11)启动Hadoop
start-all.sh
12) 复制一个窗口进入这个路径
cd /training/hive/scripts/metastore/upgrade/mysql/
输入命令后输密码Root123!进入mysql
mysql -u root –p
输命令创建数据库metastore
create database metastore;
使用之前创建好的hivedb
use hivedb;
执行下面的代码
source hive-schema-2.3.0.mysql.sql
12) 回到前面那个窗口初始化mysql
schematool -dbType mysql -initSchema
成功的话会有这个提示
Starting metastore schema initialization to 2.3.8 Initialization
script hive-schema-2.3.8.mysql.sql Initialization script completed
schemaTool completed
13)进入hive测试;
进hive命令行
hive
创建库
Create database hive1;
显示库,可以看到hive1
Show databases;
退出
exit;
14)用hdfs看看刚刚的hive1
hdfs dfs -ls /user/hive/warehouse
关掉hadoop
stop-all.sh
相关文章:

CentOS7 Hive2.3.8安装
CentOS7 Hive2.3.8 安装 建议从头用我的博客,如果用外教的文件到 一、9)步骤了,就用他的弄完,数据库不一样,在9步骤前还能继续看我的 一、 安装MySQL 0.0)查询mariadb,有就去0.1),没有就不管…...
代码随想录算法训练营第四十四天 完全背包 、零钱兑换 II 、组合总和 Ⅳ
代码随想录算法训练营第四十四天 | 完全背包 、零钱兑换 II 、组合总和 Ⅳ 完全背包 题目链接:题目页面 (kamacoder.com) 解释一、01背包 一维 :为什么要倒序遍历背包? 首先要明白二维数组的递推过程,然后才能看懂二维变一维的…...

【经验】vscode 鼠标拖曳不能选中整行文字,只能选中纵向矩形范围
1、问题描述 不知道昨天操作vscode设置界面时,误选择了啥,导致鼠标拖曳不能选中整行文字,只能选中纵向矩形范围,现象如下: 2、解决方法 1)打开设置界面 点击左下角按键,选择“设置” 2&…...

Redis--事务机制的详解及应用
Redis事务的概念: Redis事务就是将一系列命令包装成一个队列,在执行时候按照添加的顺序依次执行,中间不会被打断或者干扰,在执行事务中,其他客户端提交的命令不可以插入到执行事务的队列中,简单来说Redis事…...

路由器端口映射如何配置?
在网络通信中,路由器是一个重要的设备,它负责将数据包从一个网络传输到另一个网络。路由器的端口映射配置是一种重要的设置,可以使外部网络中的计算机通过访问路由器上的特定端口与内部网络中的计算机进行通信。本文将介绍什么是路由器端口映…...

力扣34. 在排序数组中查找元素的第一个和最后一个位置(二分查找)
Problem: 34. 在排序数组中查找元素的第一个和最后一个位置 文章目录 题目描述思路复杂度Code 题目描述 思路 Problem: 二分查找常用解题模板(带一道leetcode题目) 直接套用上述中的寻找左、右边界的二分查找模板即可 复杂度 时间复杂度: O ( l o g n )…...

【每日一题】3.2 求逆序对
题目描述 给定一个长度为 n的整数数列,请你计算数列中的逆序对的数量。 逆序对的定义如下:对于数列的第 i个和第 j个元素,如果满足 i<j 且 a[i]>a[j],则其为一个逆序对;否则不是。 输入格式 第一行包含整数 n…...
NTP时间源服务器(NTP网络时钟)助力智慧医院数字化
NTP时间源服务器(NTP网络时钟)助力智慧医院数字化 NTP时间源服务器(NTP网络时钟)助力智慧医院数字化 目前计算机网络中各主机和服务器等网络设备的时间基本处于无序的状态。 随着计算机网络应用的不断涌现,计算机的时…...

Benchmark学习笔记
小记一篇Benchmark的学习笔记 1.什么是benchmark 在维基百科中,是这样子讲的 “As computer architecture advanced, it became more difficult to compare the performance of various computer systems simply by looking at their specifications.Therefore, te…...

Linux中的动静态库
目录 一、静态库 (1)静态库的优缺点: (2)Linux下静态库的创建和执行 1.直接编译编辑 2.指定路径和库名 3.用LIBRARY_PATH环境变量来配置路径 二、动态库 (1)动态库的优缺点 ÿ…...

C/C++基础语法
C/C基础语法 文章目录 C/C基础语法头文件经典问题链表链表基础操作 秒数转换闰年斐波那契数列打印n阶菱形曼哈顿距离菱形图案的定义大数计算 输入输出格式化输入输出getline()函数解决cin只读入一个单词的问题fgets读入整行输出字符数组(两种方式puts和printf&#…...

Home Assistant:基于Python的智能家居开源系统详解
Home Assistant:基于Python的智能家居开源系统详解 在数字化和智能化的时代,智能家居系统成为了现代家庭的新宠。它们能够让我们更加方便地控制家中的各种设备,实现自动化和个性化的居住体验。其中,Home Assistant作为一款基于Pyt…...
使用vscode进行简单的多文件编译
安装好必要的插件后(如C/C,code runner等)默认生成task.json即可进行单文件运行 涉及到多文件情况可以修改task.json如下: {"version": "2.0.0","tasks": [{"type": "cppbuild&quo…...

Python实现PPT演示文稿中视频的添加、替换及提取
无论是在教室、会议室还是虚拟会议中,PowerPoint 演示文稿都已成为一种无处不在的工具,用于提供具有影响力的可视化内容。PowerPoint 提供了一系列增强演示的功能,在其中加入视频的功能可以大大提升整体体验。视频可以传达复杂的概念、演示产…...

Mysql学习之MVCC解决读写问题
多版本并发控制 什么是MVCC MVCC (Multiversion Concurrency Control)多版本并发控制。顾名思义,MVCC是通过数据行的多个版本管理来实现数据库的并发控制。这项技术使得在InnoDB的事务隔离级别下执行一致性读操作有了保证。换言之࿰…...
Linux下如何生成coredump文件
引言 在linux下执行程序,当出现coredump时,却发现没有生成core文件,或者生成了core文件却不知道在哪里,下面就讲述如何产出core文件,以及指定core文件的产出格式与路径。 打开core文件的大小限制 ulimit -c unlimit…...

eltable 合计行添加tooltip
eltable 合计行添加tooltip 问题描述: eltable 合计行单元格内容过长会换行,需求要求合计行数据超长显示 … ,鼠标 hover 时显示提示信息。 解决方案:eltable合计行没有对外的修改接口,想法是 自己实现一个tooltip&a…...
Secure Boot(安全启动)
Secure Boot(安全启动)的原理基于链式验证,这是一种确保计算机在启动过程中只加载和执行经过认证的软件的机制。这个过程涉及到硬件、固件和操作系统的多个层面。以下是Secure Boot的基本原理: 密钥和证书:Secure Boot…...
大厂面试经验:如何对加密后的数据进行模糊查询操作
加密后的数据对模糊查询不是很友好,本篇就针对加密数据模糊查询这个问题来展开讲一讲实现的思路。 为了数据安全我们在开发过程中经常会对重要的数据进行加密存储,常见的有:密码、手机号、电话号码、详细地址、银行卡号、信用卡验证码等信息…...

修改docker默认存储位置【高版本的docker】
一、修改docker默认存储位置 1、停服务 systemctl stop docker 2、修改/etc/docker/daemon.json添加新的dcoker路径 如"data-root": "/mnt/hdd1/docker" 3、保存后重启服务:systemctl restart docker 二、其他服务的命令 systemctl disab…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...

企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...

均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...