ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

码农世界 2024-05-30 后端 92 次浏览 0个评论

环境

本文章使用 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

下载资源

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

链接:https://pan.baidu.com/s/121zVsgc4muSt9rgCWnJZmw 

提取码:wkk6


一、安装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

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

2.安装Hive

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

cd /usr/local/
sudo mv apache-hive-3.1.2-bin hive
sudo chown -R hadoop hive

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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.cj.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

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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小节的执行过程:

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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

1.启动Hadoop

start-dfs.sh

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

2.初始化hive

进入hive安装目录(笔者的hive安装目录为/usr/local/hive),执行命令如下:

cd /usr/local/hive
./bin/schematool -dbType mysql -initSchema

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

org.datanucleus.store.rdbms.exceptions.MissingTableException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations.

就是hive初始化的问题,可直接进行初始化操作(即执行此步骤)亦可参考此篇博客:

启动hive时报错:Required table missing : “`VERSION`“ in Catalog ““ Schema ““._required table missing : "`version`" in catalog ""-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' 开头的数据库

ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作

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

转载请注明来自码农世界,本文标题:《ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,92人围观)参与讨论

还没有评论,来说两句吧...

Top