0


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

环境

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

如上,解压成功,可以看到/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:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
    <description>password to use against metastore database</description>
  </property>
</configuration>

写入后保存并退出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

进入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' 开头的数据库

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

标签: hive mysql hadoop

本文转载自: https://blog.csdn.net/qq_67822268/article/details/134778246
版权归原作者 哇咔咔哇咔 所有, 如有侵权,请联系我们删除。

“ubuntukylin-22.04.1安装Hive、MySQL、配置Hive及Hive连接MySQL操作”的评论:

还没有评论