前言

本文讲解如何通过数据库客户端界面工具DBeaver连接hive,并解决驱动下载不下来的问题。

1、为什么使用客户端界面工具

为什么使用客户端界面工具而不用命令行使用hive

  • 通过界面工具查看分析hive里的数据要方便很多
  • 业务人员没有权限通过命令行连接hive
  • 领导喜欢在界面工具上查看hive里的数据

2、为什么使用DBeaver

其实在网上搜一下,连接hive的工具还有很多,使用DBeaver的原因是因为我之前连接关系型数据库使用的就是DBeaver,正好DBeaver支持连接hive,且个人认为DBeaver确实挺好用的,支持各种关系型数据库,如连接Oracle数据库不需要像plsql那样自己配置连接文件,只需要在界面上输入url、用户名、密码即可,还有就是DBeaver的快捷键和Eclipse是一样的,比如注释、删除一行、复制一行到下一行等。

3、DBeaver下载、安装

之前我一直用的旧版的,现在在官网上下载了最新版的DBeaver,发现界面功能比旧版好用了很多,亲测连hive没有问题。
下载地址:https://dbeaver.io/download/
我下载的免安装版(不带jre),windows64位,大家可以根据自己情况下载对应版本。

 
image

因为我下载的免安装版,所以解压后,直接点击dbeaver.exe就可以使用了!

4、启动hive相关

测试连接前先启动hive相关的服务

1、启动hdfs、yarn

opt/hadoop-2.7.5/sbin/start-dfs.sh
/opt/hadoop-2.7.5/sbin/start-yarn.sh

2、启动hiveserver2(hive-0.11.0以后的版本)
如果想远程连接hive,则需要启动hiveserver2

/opt/apache-hive-2.3.2-bin/bin/hive --service hiveserver2
 
image

关于hadoop和hive的配置可以参考centos7 hadoop 单机模式安装配置centos7 hive 单机模式安装配置

  • 注:图中的startall.sh就是上面hdfs、yarn的启动命令

5、创建hive测试表

CREATE TABLE IF NOT EXISTS test_20180713 (id INT,name STRING)ROW FORMAT DELIMITED FIELDS TERMINATED BY " " LINES TERMINATED BY "\n";

insert into test_20180713 values(1,'tom');
 
image

6、DBeaver连接hive

DBeaver连接关系型数据库比较的简单,连接hive的话因为要配置下载驱动,所以这里详细说明一下。

6.1 文件->新建->数据库连接(新版是中文的,而之前旧版的是英文的,这点我还是比较喜欢的~)

 
image

6.2 选择新连接类型->Apache Hive(从这里看到,DBeaver支持的数据库还是很多的)

 
image

6.3 填一下hiveserver2的ip和hive的数据库名

 
image

6.4 编辑驱动设置-下载/更新(第一次打开需要下载maven的依赖配置,需等待一会)

 
image

这里需等待一会,截图太多,记不清楚是不是这个图了~

 
image

6.5 选择hive的版本,我这里的版本为2.3.2

到这里就有问题了,之前我在公司的测试机用ambari装的hive的版本是1.2.1,然后下载1.2.1需要的hive的jar包,很快就下载下来了,之后就可以查询hive里的数据了,但是在自己的虚拟机版本为2.3.2,2.3.2的jar就下不下来了

 
image
 
image

尝试将maven库改为阿里云的无效,且测试和DBeaver的版本无关,旧版和最新版的都下载不下来

 
image

7、用hive自带的jdbc jar

多次尝试依然解决不了驱动下载不下来的问题,只能尝试用hive安装包自带的jdbc jar了,幸好DBeaver和hive很好的支持了这种方法。hive帮我们集成了jdbc相关的一个jar包,这样我们就不用一个一个去lib下找相关的jar包了~
首先将hive安装包里的jdbc包下载到本地,jar包位置:

/opt/apache-hive-2.3.2-bin/jdbc/hive-jdbc-2.3.2-standalone.jar

然后将DBeaver默认的jar删除,再添加上我们刚才下载的jar包,然后下一步,命名我们的连接。

 
image
 
image
 
image

8、测试连接

右键连接名->编辑连接->测试连接,然后发现报了一个异常

 
image
 
image

9、解决异常

但是在ambari安装的hive上测试这种方法是没有问题的,经过网上查询该异常,发现是我的hdfs配置问题,修改hdfs的core-site.xml即可
先关掉hdfs、yarn、hiveserver2服务

vim /opt/hadoop-2.7.5/etc/hadoop/core-site.xml

添加

<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>

然后重启hdfs、yarn、hiveserver2
具体可参考[Hive]那些年我们踩过的Hive坑里的第十个异常。

10、再次测试

再次测试连接,成功!

 
image

从这里可以看出DBeaver的界面功能还是挺丰富的,使用起来也比较方便

通过数据库客户端界面工具DBeaver连接Hive的更多相关文章

  1. 使用DBeaver连接hive

    介绍 在hive命令行beeline中写一些很长的查询语句不是很方便,查询结果也不是很友好,于是找了一个hive的客户端界面工具DBeaver,它也支持很多符合JDBC连接的数据库,例如MySQL.O ...

  2. 连接Hive的客户端界面工具–SQuirrel SQL Client

    关键字:Hive客户端.界面.SQuirrel SQL Client 刚看到一个可以连接Hive的客户端界面工具–SQuirrel SQL Client,试了一下,用起来还行,在这里记录一下安装及使用 ...

  3. 如何使用DBeaver连接Hive

    1 DBeaver介绍 DBeaver是一个通用的数据库管理工具和 SQL 客户端,支持多种兼容 JDBC 的数据库.DBeaver 提供一个图形界面用来查看数据库结构.执行SQL查询和脚本,浏览和导 ...

  4. hive数仓客户端界面工具

    1.Hive的官网上介绍了三个可以在Windows中通过JDBC连接HiveServer2的图形界面工具,包括:SQuirrel SQL Client.Oracle SQL Developer以及Db ...

  5. 大数据自学3-Windows客户端DbVisualizer/SQuirreL配置连接hive

    前面已经学习了将数据从Sql Server导入到Hive DB,并在Hue的Web界面可以查询,接下来是配置客户端工具直接连Hive数据库,常用的有DbVisualizer.SQuirreL SQL ...

  6. Dbeaver连接Hive和Mysql的配置

    1.连接Hive 首选需要配置Hive 这里我们采用的是JDBC的连接方式 (1) 在Hive中后台启动hiveserver2 [root@hadoop-101 hive]# bin/hiveserv ...

  7. MongoDB的客户端管理工具--nosqlbooster 连接MongoDB服务器

    nosqlbooster的官网地址为https://nosqlbooster.com.大家如果想直接下载,可以登入下载网址https://nosqlbooster.com/downloads. 下载w ...

  8. 关于数据库客户端navicat创建新连接失败的问题

    如图是navicat创建新连接的截图: 我就有一个疑问了,主机填localhost或者127.0.0.1都是本机,自然是可以连接成功的,那如果填本机的IP地址会怎样呢? 如下图,出现了报错: 说我的访 ...

  9. DBeaver客户端工具连接Hive

    目录 介绍 下载安装 相关配置 1.填写主机名 2.配置驱动 简单使用 主题设置 字体背景色 介绍 在hive命令行beeline中写一些很长的查询语句不是很方便,急需一个hive的客户端界面工具 D ...

随机推荐

  1. HDU6440 Dream

    题目链接:https://vjudge.net/problem/HDU-6440 知识点: 构造.费马小定理 题目大意: 给定一个素数 $p$,要求定义一个加法运算表和一个乘法运算表,尺寸都为 $p ...

  2. 手机端页面访问PC页面自动跳手机端代码

    <script> var mobileAgent = new Array("iphone", "ipod", "ipad", & ...

  3. vue配置环境参考

    转  https://www.cnblogs.com/tu-0718/p/7521099.html 转 https://www.jianshu.com/p/1626b8643676 $ vue ini ...

  4. 用 CSS Grid 布局制作一个响应式柱状图

    最新一段时间比较喜欢玩弄图表,出于好奇,我想找出比较好的用 CSS 制作图表的方案.开始学习网上开源图表库,它对我学习新的和不熟悉的前端技术很有帮助,比如这个:CSS Grid. 今天和大家分享我学到 ...

  5. Spring MVC基于注解@Controller和@RequestMapping开发的一个例子

    1.创建web项目 2.在springmvc的配置文件中指定注解驱动,配置扫描器 在 Spring MVC 中使用扫描机制找到应用中所有基于注解的控制器类,所以,为了让控制器类被 Spring MVC ...

  6. 8分钟为你详解React、Angular、Vue三大前端技术

    [引言] 当前世界中,技术发展非常迅速并且变化迅速,开发者需要更多的开发工具来解决不同的问题.本文就对于当下主流的前端开发技术React.Vue.Angular这三个框架做个相对详尽的探究,目的是为了 ...

  7. 6.Linux常用命令(重点)

    (1)ls 查看当前目录下的目录和文件 查看当前目录下所有目录和文件 ls -l会将目录和文件竖着排,并且可以提供文件数据 上图最左边以“d”开头的是目录,以“-”开头的是文件.后面是文件和目录的权限 ...

  8. Life In Changsha College - SQA计划和系统测试规程

    一. SQA计划 (1)     对软件进行测试,保证软件不出问题: (2)     项目需要符合IEEE.ISO等软件工程标准 (3)     软件拥有基本的流程图.类图.数据流图等 (4)    ...

  9. equals()方法练习

    1: package com.aff.equals; public class TestOrder { public static void main(String[] args) { Order o ...

  10. 关于Dev-C++一种引用头文件<iostream>问题(暴力解决)

    问题情况如下,因个人水平有限,不知道具体原因是啥,当引用头文件<iostream>时会出现如下问题,经排查,并不是头文件本身的问题,有可能是Dev哪一个文件被改动了,或者设置出了问题(前者 ...