环境

本文章使用 Ubuntu 22.04 64位 作为系统环境,请自行前往优麒麟官网自行安装系统,也可通过阿里镜像下载安装;在安装Hadoop3.1.3的基础上安装Hive3.1.2,Hadoop3.1.3的安装教程详见林子雨老师的有关Hadoop3.1.3安装教程及单机/伪分布式配置,在这不做过多赘述:Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)_厦大数据库实验室博客 (xmu.edu.cn)

前言

本文中安装的Hadoop及JDK是基于林子雨老师的《大数据技术原理与应用》中所要求内容,因安装的Ubuntu系统不同、apt更新程度不同,因此所安装的mysql与林子雨老师的可能有所不同(本文安装的mysql的版本为8.0.35),版本相差不大对安装的影响也不是很大,读者可以尝试参考本文章进行安装。

下面附上厦门大学数据实验室主页:

厦门大学数据库实验室 | 数据驱动生活 (xmu.edu.cn)

注:在安装Hive3.1.2之前,请首先安装Hadoop3.1.3

下载资源

附上百度网盘下载链接,内有所需资源:

百度网盘 请输入提取码

一、安装Hive3.1.2

1.下载并解压Hive安装包

将在物理机上下载的apache-hive-3.1.2-bin.tar文件拖入虚拟机中Ubuntu系统上的“下载”文件夹中

若不能拖入可能是因为没有安装VMware Tools,可移步于本人的另一篇文章:真·保姆级——在VMware的Ubuntukylin上进行Hadoop单机/伪分布式安装时安装VMware Tools后虚拟机与物理机之间无法传输文件和复制粘贴的问题(附Ubuntu更改默认登录用户)_哇咔咔哇咔的博客-CSDN博客

打开下载文件夹,对文件进行解压:

cd ~/下载

sudo tar -zxvf ./apache-hive-3.1.2-bin.tar.gz -C /usr/local

如上,解压成功,可以看到/usr/local目录下有相关解压文件

2.安装Hive

进入/usr/local/目录下,对解压缩后的文件进行改名并修改文件权限:

cd /usr/local/

sudo mv apache-hive-3.1.2-bin hive

sudo chown -R hadoop hive

3.配置环境变量

使用vim编辑.bashrc文件:

vim ~/.bashrc

在该文件最前面一行添加如下内容:

export HIVE_HOME=/usr/local/hive

export PATH=$PATH:$HIVE_HOME/bin

export HADOOP_HOME=/usr/local/hadoop

HADOOP_HOME需要被配置成读者的Hadoop的安装路径,本人安装在/usr/local/hadoop目录下

编辑完成保存并退出后,运行如下命令使配置立即生效:

source ~/.bashrc

4.修改配置文件

将hive-default.xml.template重命名为hive-default.xml:

cd /usr/local/hive/conf

mv hive-default.xml.template hive-default.xml

新建配置文件hive-site.xml:

cd /usr/local/hive/conf

vim hive-site.xml

将如下内容写入文件hive-site.xml:

javax.jdo.option.ConnectionURL

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true

JDBC connect string for a JDBC metastore

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

Driver class name for a JDBC metastore

javax.jdo.option.ConnectionUserName

hive

username to use against metastore database

javax.jdo.option.ConnectionPassword

hive

password to use against metastore database

写入后保存并退出vim编辑器。

二、MySQL的安装与配置

1.安装MySQL

安装MySQL步骤请参考本人另一篇文章:Ubuntu下载安装最新版MySQL(附运行截图)-CSDN博客

2.下载并安装mysql jdbc 包

上一小节中的博客安装的 MySQL的版本为 8.0.35,因此我们需要下载对应版本的 MySQL jdbc 包,读者可以去本文开始时下载资源章节中的下载链接中下载,也可前往官网进行下载:MySQL :: Download Connector/J

下载教程可参考:下载mysql jdbc 包详细教程-CSDN博客

下载完成后,将包从物理机上拖到虚拟机Ubuntu系统中的家目录下的下载文件夹中

对mysql-connector-j_8.1.0-1ubuntu22.04_all.deb文件进行解压缩

使用 sudo dpkg -i mysql-connector-j_8.1.0-1ubuntu22.04_all.deb 命令安装 MySQL Connector/J 软件包时,该软件包将会被解压并放置在 /usr/share/java/ 目录下

将解压缩后的文件mysql-connector-j-8.1.0.jar拷贝到/usr/local/hive/lib目录下:

cd ~/下载

sudo dpkg -i mysql-connector-j_8.1.0-1ubuntu22.04_all.deb

cd /usr/share/java

cp mysql-connector-j-8.1.0.jar /usr/local/hive/lib

解压之后可以看到/usr/share/java目录下有mysql-connector-j-8.1.0.jar文件:

3.启动并登陆mysql shell

cd ~

service mysql start #启动mysql服务

mysql -u root -p #登陆shell界面

4.创建用户

create user hive identified by 'hive';

创建了一个用户名为 "hive" 的用户,并设置了密码为 "hive"

5.授权

grant all privileges on hive.* to hive@'%' with grant option;

授予了用户 "hive" 对数据库 "hive" 中所有表的全部权限,并且允许该用户将这些权限授予其他用户。hive@'%' 表示用户 "hive" 可以从任何主机连接到 MySQL 服务器

6.刷新权限

flush privileges;

刷新了权限,使新的授权规则立即生效

如下为3-6小节的执行过程:

三、验证hive的安装及可能出现的错误

1.启动Hadoop

start-dfs.sh

本人已配置环境变量,所以,不需要把start-dfs.sh的路径加上,如果没有配置PATH,请读者加上路径后才能运行命令。

2.初始化hive

cd /usr/local/hive

./bin/schematool -dbType mysql -initSchema

进入hive安装目录(本人的hive安装目录为/usr/local/hive)

若启动过程中出现如下报错:

Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument

可参考此篇博客:

启动hive时报错“java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument“-CSDN博客

3.启动hive

在启动hive之前请读者先启动数据库服务

cd /usr/local/hive

bin/hive

若正常启动会进入Hive的交互式执行环境以后,并出现如下命令提示符:

hive>

若启动过程中出现如下报错:

Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument

可参考此篇博客:启动hive时报错“java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument“-CSDN博客

4.运行hive简单操作

create database if not exists hive; #创建一个名为 "hive" 的数据库,如果它不存在的话

show databases; #显示所有的数据库

show databases like 'h.*'; #显示以 'h' 开头的数据库

若能成功运行且未出现报错则证明hive成功安装并配置完成!!!

文章链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: