Hive 2.3.0 安装部署(mysql 8.0)
Hive安装部署


一.Hive的安装
1、下载apache-hive-2.3.0-bin.tar.gz
可以自行下载其他版本:http://mirror.bit.edu.cn/apache/hive/
2.3.0版本链接:https://pan.baidu.com/s/18NNVdfOeuQzhnOHVcFpnSw
提取码:xc2u
2、用mobaxterm或者其他连接软件将安装包传输到虚拟机/tools 文件夹中
3、解压安装
tar -zxvf apache-hive-2.3.0-bin.tar.gz -C /training/
4、设置环境变量
进入环境变量文件
vi ~/.bash_profile
添加hive环境
export HIVE_HOME=/training/apache-hive-2.3.0-bin
export PATH=$PATH:$HIVE_HOME/bin
5、让环境变量生效
source ~/.bash_profile
6、验证安装
hive --version
二.Hive的配置
[I] 因为hive需要借助MySQL来存储metadata元数据,所以需要先安装mysql并配置mysql
I.在虚拟机上安装MySQL(未安装MySQL的,需要安装):
- 安装过先卸了:
1.查看是否有安装过mysql(如果有则进行下面操作,没有的话跳过至分割线下)
rpm -qa | grep -i mysql
2.删除mysql
yum -y remove MySQL-*
3.把所有出现的目录全部删除
find / -name mysql
然后可以使用rm -rf 语句一一删除,删除时请注意,一旦删除无法恢复。
4.删除配置文件
rm -rf /etc/my.cnf
5.删除mysql的默认密码
rm -rf /root/.mysql_sercret
———————————————————————————————————————————————————-
- 未安装过:
查询mariadb,因为会和MySQL冲突
rpm -qa | grep mariadb
卸载掉
rpm -e --nodeps [查询出来的内容]
0.检查自己本机的mysql是什么版本的我的是8.0.15,没有的话先安一个本机的

1.配置Mysql 8.0安装源
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
2.安装Mysql 8.0
yum --enablerepo=mysql80-community install mysql-community-server
看到complete则安装成功
3.启动mysql服务
- 两种方式,选择其一进行启动
service mysqld start
systemctl start mysqld.service
4.查看mysql服务运行状态
service mysqld status

5.查看root临时密码
安装完mysql之后,会生成一个临时的密码让root用户登录
grep "A temporary password" /var/log/mysqld.log

这里临时密码就为r0155f&dA4Ne
6.利用临时密码进入mysql中,更改密码
- 进入mysql:
mysql -uroot -p
在enter password 处输入刚刚的临时密码,回车即可登录,若遇到报错:Access denied for user ‘root’@‘localhost’ (using password:YES)请看文章末尾
- 更改密码策略
由于mysql8.0密码会规定必须有大写小写数字,很麻烦,在此更改密码格式规定:
validate_password.length 是密码的最小长度,默认是8,我们把它改成6
输入:
set global validate_password.length=6;
validate_password.policy 验证密码的复杂程度,我们把它改成0
输入:
set global validate_password.policy=0;
validate_password.check_user_name 用户名检查,用户名和密码不能相同,我们也把它关掉
输入:
set global validate_password.check_user_name=off;
- 更改密码
注意引号是英文的引号,语句后有分号结尾
在此设置的密码123456,可以自行更换,个人觉得123456最好用
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
7.mysql数据库配置
- 先创建一个名为hive的数据库
create database hive;
- 进入数据库mysql
use mysql;
- 查看root的host配置
select host, user, authentication_string, plugin from user;

可以看到root的host是localhost而不是%
所以加一个root的host是%的账号
CREATE USER 'root'@'%' IDENTIFIED BY '123456';
- 在次查看root的host配置
select host, user, authentication_string, plugin from user;

可以看到已经增加了root的host为%的用户
- 配置远程访问权限
GRANT ALL ON . TO 'root'@'%';
- 强制更新
flush privileges;
[II] 配置hive文件
I.hive-site.xml
1.进入hive安装路径
cd /training/apache-hive-2.3.0-bin/conf
ll查看路径里的内容

2.将hive-env.sh.template复制并命名为hive-site.xml
cp hive-default.xml.template hive-site.xml
再次查看
ll

3.进入文件进行配置
vi hive-site.xml
4.将文件内内容全部删除后替换此配置
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hive</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.schema.verification</name><value>false</value></property>
</configuration>
5.将mysql8.0的驱动包放在hive安装路径的lib文件夹中
- 检查自己的mysql版本

- 下载自己版本的mysql驱动包,此处提供8.0.15版本的
链接:https://pan.baidu.com/s/18x49yO8j8CEp-t8Rb8cxHQ
提取码:au4k
- 利用xshell或者其他连接软件将mysql8.0的驱动包放在hive安装路径的lib文件夹中

[III] 初始化mysql
1.初始化
schematool -dbType mysql -initSchema
2.成功日志信息
Starting metastore schema initialization to 2.3.0 Initialization
script hive-schema-2.3.0.mysql.sql
Initialization script completed
schemaTool completed
三. Hive检验测试
1.进入hive

2.创建一个库
create database hive1;
3.显示库
show databases;

可以看到hive1库了
- 去hdfs里看看
hadoop fs -lsr/

可以看到hdfs里已经更新了hive1这个数据库

- 去mysql里看看
use hive;
select * from DBS;

可以看到mysql里也已经更新了hive1这个数据库
Access denied for user ‘root’@‘localhost’ (using password:YES) 解决方案
1.打开MySQL目录下的my.ini文件,在文件的最后添加一行skip-grant-tables,保存并关闭文件。(WIN7默认安装,my.ini在C:\ProgramData\MySQL\MySQL Server 8.0)
2.重启MySQL服务。
3.通过命令行进入MySQL的BIN目录,输入mysql -u root -p(不输入密码),提示输入密码不用管,直接Enter回车即可进入数据库。
4.执行 use mysql;,使用mysql数据库。
5.执行 ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;(修改root的密码)
6.打开MySQL目录下的my.ini文件,删除最后一行的skip-grant-tables,保存并关闭文件。
7.重启MySQL服务。
8.在命令行中输入mysql -u root -p 与密码123456,即可成功连接数据库。
相关文章:
Hive 2.3.0 安装部署(mysql 8.0)
Hive安装部署 一.Hive的安装 1、下载apache-hive-2.3.0-bin.tar.gz 可以自行下载其他版本:http://mirror.bit.edu.cn/apache/hive/ 2.3.0版本链接:https://pan.baidu.com/s/18NNVdfOeuQzhnOHVcFpnSw 提取码:xc2u 2、用mobaxterm或者其他连接…...
IPD术语表
简称英文全称中文ABPannual business plan年度商业计划ABCactivity -based costing基于活动的成本估算ABMactivity -based management基于活动的管理ADCPavailability decision check point可获得性决策评审点AFDanticipatory failure determination预防错误决定AMEadvanced ma…...
目标检测损失函数 yolos、DETR为例
yolos和DETR,除了yolos没有卷积层以外,几乎所有操作都一样。 HF官方文档 因为目标检测模型,实际会输出几百几千个“框”,所以损失函数计算比较复杂。损失函数为偶匹配损失 bipartite matching loss,参考此blog targe…...
linux系统编程2--网络编程socket
在linux系统编程中网络编程是使用socket(套接字),socket这个词可以表示很多概念:在TCP/IP协议中,“IP地址TCP或UDP端口号”唯一标识网络通讯中的一个进程,“IP地址端口号”就称为socket。在TCP协议中&#…...
FPGA纯Verilog实现任意尺寸图像缩放,串口指令控制切换,贴近真实项目,提供工程源码和技术支持
目录1、前言2、目前主流的FPGA图像缩放方案3、本方案的优越性4、详细设计方案5、vivado工程详解6、上板调试验证并演示7、福利:工程源码获取1、前言 代码使用纯verilog实现,没有任何ip,可在Xilinx、Intel、国产FPGA间任意移植; 图…...
华为OD机试题 - 最长合法表达式(JavaScript)| 代码+思路+重要知识点
最近更新的博客 华为OD机试题 - 字符串加密(JavaScript) 华为OD机试题 - 字母消消乐(JavaScript) 华为OD机试题 - 字母计数(JavaScript) 华为OD机试题 - 整数分解(JavaScript) 华为OD机试题 - 单词反转(JavaScript) 使用说明 参加华为od机试,一定要注意不要完全背…...
L1-005 考试座位号
L1-005 考试座位号 每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试…...
Obsidian + remotely save + 坚果云:实现电脑端和手机端的同步
写在前面:近年来某象笔记广告有增无减,不堪其扰,便转投其它笔记,Obsidian、OneNote、Notion、flomo都略有使用,本人更偏好obsidian操作简单,然其官方同步资费甚高,囊中羞涩,所幸可通…...
对比学习MoCo损失函数infoNCE理解(附代码)
MoCo loss计算采用的损失函数是InfoNCE: 下面是MoCo的伪代码,MoCo这个loss的实现就是基于cross entropy loss。 将k作为q的正样本,因为k与q是来自同一张图像的不同视图;将queue作为q的负样本,因为queue中含有大量…...
logd守护进程
logd守护进程1、adb logcat命令2、logd守护进程启动2.1 logd文件目录2.2 main方法启动3、LogBuffer缓存大小3.1 缓存大小优先级设置3.2 缓存大小相关代码位置android12-release1、adb logcat命令 命令功能adb bugreport > bugreport.txtbugreport 日志adb shell dmesg >…...
【汽车雷达通往自动驾驶的关键技术】
本文编辑:调皮哥的小助理 现代汽车雷达装置比手机还小,能探测前方、后方或侧方的盲点位置是否存在障碍物,但这还不百分之百实现全自动驾驶的。传统的汽车雷达分辨率都不高,只能“看到”一团东西,可以检测到汽车周围存在…...
2023实习面经
实习面经 秋招笔试面试全记录 字节-电商 字节实习一面: 二分类的损失函数是什么,怎么算?多分类的损失函数怎么算?如果文本分类的标签有多个,比如一个文本同时属于多个label那怎么办?如果文本分类里面的…...
linux shell 入门学习笔记2shell脚本
什么是shell脚本 当命令或者程序语句写在文件中,我们执行文件,读取其中的代码,这个程序就称之为shell脚本。 有了shell脚本肯定是要有对应的解释器了,常见的shell脚本解释器有sh、python、perl、tcl、php、ruby等。一般这种使用文…...
Android稳定性系列-01-使用 Address Sanitizer检测原生代码中的内存错误
前言想必大家曾经被各种Native Crash折磨过,本地测试没啥问题,一到线上或者自动化测试就出现各种SIGSEGV、SIGABRT、SIGILL、SIGBUS、SIGFPE异常,而且堆栈还是崩溃到libc.so这种,看起来跟我们的代码没啥关系,关键还不好…...
HyperOpt-quniform 范围问题
在使用 quniform 的时候,可能会出现超出指定范围的值,例如对于 GBDT 设置参数空间为 learning_rate:hp.quniform(learning_rate,0.05,2.05,0.2),但是仍然会报错 ValueError: learning_rate must be greater than 0 but was 0.0,但…...
Pycharm搭建一个Django项目
File->new project 点击create, 等待一下即可 查看安装 Django 版本: 在 Pycharm 底部选择 Terminal 然后在里面输入:python -m django --version 启动项目: 在 Terminal 里面输入: python manage.py runserver 查看文件目…...
浅析前端工程化中的一部曲——模块化
在日益复杂和多元的 Web 业务背景下,前端工程化经常会被提及。工程化的目的是高性能、稳定性、可用性、可维护性、高效协同,只要是以这几个角度为目标所做的操作,都可成为工程化的一部分。工程化是软件工程中的一种思想,当下的工程…...
新版bing(集成ChatGPT)申请通过后在谷歌浏览器(Chrome)上的使用方法
大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,科大讯飞比赛第三名,CCF比赛第四名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…...
Time-distributed 的理解
前言 今天看到论文中用到 Time-distributed CNN,第一次见到 Time-distributed,不理解是什么含义,看到代码实现也很懵。不管什么网络结构,外面都能套一个TimeDistributed。看了几个博客,还是不明白,问了问C…...
matlab 计算矩阵的Moore-Penrose 伪逆
目录 一、Moore-Penrose 伪逆1、主要函数2、输入输出参数二、代码示例使用伪逆求解线性方程组一、Moore-Penrose 伪逆 Moore-Penrose 伪逆是一种矩阵,可在不存在逆矩阵的情况下作为逆矩阵的部分替代。此矩阵常被用于求解没有唯一解或有许多解的线性方程组。 对于任何矩阵…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...
算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
