hive-2.3.3的安装详解

本文详细介绍Hive的两种安装方式:内嵌Derby版本和外置MySQL版本,并重点介绍了后者从配置到环境变量设置、元数据库初始化及基本操作的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装前的准备:

    首先需要搭建好hadoop集群并启动(需要启动hdfs和yarn)

    mysql启动正常

2.hive的安装

    方式一(不推荐):内嵌 Derby 版本

    1、 上传安装包 apache-hive-2.3.2-bin.tar.gz

    2、 解压安装包 tar -zxvf apache-hive-2.3.2-bin.tar.gz -C /home/hadoop/apps/

   3、 进入到 bin 目录,运行 hive 脚本:[hadoop@hadoop02 bin]$ ./hive

    方式二(推荐):外置 MySQL 版本

    1、 准备好 MySQL(设置好远程连接)

    2、 上传安装包 apache-hive-2.3.2-bin.tar.gz

    3、 解压安装包 tar -zxvf apache-hive-2.3.2-bin.tar.gz -C ~/apps/

    4、 修改配置文件(安装在哪里都可以,为了演示我们mysql安装在hadoop02,hive我们安装在hadoop05)

    [hadoop@hadoop05 ~]# cd /home/hadoop/apps/apache-hive-2.3.2-bin/conf

    [hadoop@hadoop05 conf]# touch hive-site.xml

    [hadoop@hadoop05 conf]# vi hive-site.xml

    写入内容如下

    <configuration>
        <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://hadoop02:3306/hive_metastore_233?createDatabaseIfNotExist=true</value>
        <description>JDBC connect string for a JDBC metastore</description>
        <!-- 如果 mysql 和 hive 在同一个服务器节点,那么请更改 hadoop02 为 localhost -->
        <!-- 如果 mysql 和 hive 在同一个服务器节点,那么请更改 hadoop02 为 localhost -->
        <!-- 如果 mysql 和 hive 在同一个服务器节点,那么请更改 hadoop02 为 localhost -->
        </property>
        <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
        <description>Driver class name for a JDBC metastore</description>
        </property>
        <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
        <description>username to use against metastore database</description>
        </property>
        <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>root</value>
        <description>password to use against metastore database</description>
        </property>
</configuration>

    5.一定要记得加入 MySQL 驱动包(mysql-connector-java-5.1.40-bin.jar)

        该 jar 包放置在 hive的根路径下的 lib 目录

    上传MySQL 驱动包(mysql-connector-java-5.1.40-bin.jar)

    mv mysql-connector-java-5.1.40-bin.jar ~/apps/apache-hive-2.3.2-bin/lib/

    6.确保hadoop集群和mYSQL启动正常

    7.安装完成,配置环境变量

   如果是hadoop用户安装修改   vi ~/.bashrc;如果是root 安装修改 vi /etc/profile

    vi ~/.bashrc 

    添加以下两行内容:

    export HIVE_HOME=/home/hadoop/apps/apache-hive-2.3.2-bin

    export PATH=$PATH:$HIVE_HOME/bin

    保存退出。

    别忘了执行 source ~/.bashrc  r或 source /etc/profile,使配置生效

    [hadoop@hadoop02 bin]$ source ~/.bashrc

    8.验证 Hive 安装

    [hadoop@hadoop05 bin]$ hive --help

    

9.初始化元数据库

注意:当使用的 hive 是 2.x 之前的版本,不做初始化也是 OK 的,当 hive 第一次启动的时候会自动进行初始化,只不过会不会生成足够多的元数据库中的表。在使用过程中会慢慢生成。但最后进行初始化。如果使用的 2.x 版本的 Hive,那么就必须手动初始化元数据库。使用命令:

[hadoop@hadoop05 bin]$ schematool -dbType mysql -initSchema

10.启动 Hive 客户端

注意要先启动mysql:

[hadoop@hadoop02 ~]$ service mysql start

查看mysql启动进程:

[hadoop@hadoop02 ~]$ ps -ef|grep mysql

hive --service cli

或者 hive

11.测试

先进入http://hadoop03:50070 查看一下

 

创建一个数据库:

create database myhive;

执行完命令查看发现多了一个文件夹

点进去之后,发现出现如下图所示多了一个myhive的数据库

同时也增加了一条映射记录在mysql里面

查看显示数据库

show databases;

使用数据库

use 数据库名;

创建一张表(以下两条命令都可以): 95022,郑明,男,20,MA"

create table student(id int, name string, sex string, age int, department string) row format delimited fields terminated by "," lines terminated by "\n";

create table student(id int, name string, sex string, age int, department string) row format delimited fields terminated by ",";

发现hdfs的相关路径文件夹下中多了一张表

同时也增加了一条表的映射记录

同时也增加了字段的映射

然后把student.txt文件上传到linux系统中。

里面的内容是

95002,刘晨,女,19,IS
95017,王风娟,女,18,IS
95018,王一,女,19,IS
95013,冯伟,男,21,CS
95014,王小丽,女,19,CS
95019,邢小丽,女,19,IS
95020,赵钱,男,21,IS
95003,王敏,女,22,MA
95004,张立,男,19,IS
95012,孙花,女,20,CS
95010,孔小涛,男,19,CS
95005,刘刚,男,18,MA
95006,孙庆,男,23,CS
95007,易思玲,女,19,MA
95008,李娜,女,18,CS
95021,周二,男,17,MA
95022,郑明,男,20,MA
95001,李勇,男,20,CS
95011,包小柏,男,18,MA
95009,梦圆圆,女,18,MA

95015,王君,男,18,MA

 

 

然后,往创建好的student表中插入一份数据文件:(注意先使用student表所在的数据库)

load data local inpath "/home/hadoop/student.txt" into table student;

使用SQL进行查询

到此hive即为安装正常

12.退出hive

hive> quit;

或者hive> exit;

### 回答1: Hive是一个基于Hadoop的数据仓库工具,它允许用户使用SQL-like语言来进行大数据处理。Hive-2.3.3Hive的一个版本,它提供了一种新的JDBC驱动程序,这个驱动程序支持新的JDBC4.2 API,提供更完整的JDBC支持。与之前的版本不同,这个新的JDBC驱动程序提供了更好的性能和更高的可伸缩性。它还支持Kerberos身份验证和SSL加密,可以更加安全地访问Hadoop数据仓库。 使用Hive-2.3.3的JDBC驱动程序,用户可以使用Java编程语言来连接和操作Hive数据仓库。它可以帮助用户编写更加灵活、可靠的Hive应用程序,实现更高效的数据分析和处理。此外,这个驱动程序还可以作为其他应用程序的数据源,如BI应用程序和ETL工具。 对于企业级应用程序,这个JDBC驱动程序提供了更好的弹性和可伸缩性,以应对大量数据的处理需求。用户可以使用它进行数据抽取、转换和加载,从而更好地实现数据集成。 总的来说,Hive-2.3.3的JDBC驱动程序是一个非常有用的工具,它提供了更好的性能、更高的可靠性和更大的可伸缩性,使用户可以更好地处理和分析大数据。 ### 回答2Hive是一款基于Hadoop的数据仓库系统,可以用于大规模数据存储和分析。而Hive-2.3.3版本的JDBC驱动程序则是提供给Java程序访问和操作Hive数据库的一种工具。 JDBC是Java数据库连接的缩写,是Java语言访问关系型数据库的标准接口。Hive JDBC驱动程序是基于这个接口实现的,通过JDBC接口实现了Hive数据仓库的连接与操作,使得开发者可以使用Java程序对Hive表进行查询、插入、更新、删除等操作。 Hive-2.3.3版本的JDBC驱动程序具有一些新的特性,比如支持Kerberos安全认证、支持HiveServer2协议、支持连接池等。这些新增特性使得Hive-2.3.3 JDBC驱动程序更加易用、安全可靠,并能更好地满足各种应用场景的需求。 总之,Hive-2.3.3 JDBC驱动程序是连接Java程序与Hive数据库的一条桥梁,具有重要的作用。通过这个驱动程序,用户可以在Java应用程序中访问和操作Hive数据库,便于数据分析和挖掘,是大数据应用中必不可少的工具。 ### 回答3Hive-2.3.3 JDBC驱动程序是一个用于连接Apache Hive数据库的Java编程语言接口,它使得程序员能够在Java应用程序中访问Hive数据库。JDBC驱动程序是一种遵循Java Database Connectivity(JDBC)标准的软件组件,它提供了一个标准接口来访问关系型数据库。 Hive是一个基于Hadoop的数据仓库,它允许用户使用类SQL的语言查询和分析存储在Hadoop文件系统中的大规模数据集。Hive可以将结构化数据映射到Hadoop的分布式文件系统中,并提供了类SQL的查询语言HiveQL,允许用户使用HiveQL查询大型数据集。 使用Hive-2.3.3 JDBC驱动程序,程序员能够在Java应用程序中轻松地访问Hive数据库。它提供了一个稳定、高性能的连接对象来管理与Hive的通信,该对象对数据库的基本操作(例如查询和更新)提供支持。此外,JDBC驱动程序还提供了一组API,使得程序员可以自由地构建和执行查询语句,从而进行数据查询和分析。 总之,Hive-2.3.3 JDBC驱动程序是一个重要的工具,它使得Java程序员能够轻松地访问和查询Hive数据库。它提供了一组标准接口,使得程序员可以更轻松地进行数据分析和处理,为企业和组织提供了更快、更有效的数据处理解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值