DBeaver连接Hive

DBeaver连接Hive

环境说明

Component Version
DBeaver 6.3.0.201912081802-zip64
Hadoop 2.7.7
Hive 2.3.5

操作步骤

新建数据库连接

数据库->新建连接->Apache Hive

配置常规信息

image-20200106142925501

主机为Hive所在主机IP

端口默认10000

  • 9083 : metastore服务默认监听端口

  • 10000:Hive 的JDBC端口

数据库为hive中创建的数据库名称

hive用户即为linux用户,hive本身不提供用户管理,只提供权限控制。

编辑驱动设置

下载方式

image-20200106142909646

image-20200106143030011

image-20200106143106600

image-20200106143327866

hive-jdbc

image-20200106143842980

image-20200106143817169

image-20200106143941341

hadoop-common

添加工件

org.apache.hadoop

hadoop-common

2.7.7

其余同上

本地添加方式

1
2
3
4
[root@master jdbc]# pwd
/usr/local/hive-2.3.5/jdbc
[root@master jdbc]# ll |grep jdbc
-rw-r--r--. 1 root root 59694792 May 7 2019 hive-jdbc-2.3.5-standalone.jar

从hive的jdbc目录下拷出hive-jdbc-2.3.5-standalone.jar到本地,手动添加。

image-20200106153918251

image-20200106154256921

常见问题

  1. User root is not allowed to impersonate anonymous

    问题描述:

    1
    Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User:xxx not allowed to impersonate anonymous

    解决方案:

    修改hadoop 配置文件 etc/hadoop/core-site.xml,加入如下配置项

    1
    2
    3
    4
    5
    6
    7
    8
    <property>
    <name>hadoop.proxyuser.root.hosts</name>
    <value>*</value>
    </property>
    <property>
    <name>hadoop.proxyuser.root.groups</name>
    <value>*</value>
    </property>

    备注

    hadoop.proxyuser.XXX.hosts 与 hadoop.proxyuser.XXX.groups 中XXX为异常信息中User:* 中的用户名部分

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <property> 
    <name>hadoop.proxyuser.[username].hosts</name>
    <value>*</value>
    <description>The superuser can connect only from host1 and host2 to impersonate a user</description>
    </property>
    <property>
    <name>hadoop.proxyuser.[username].groups</name>
    <value>*</value>
    <description>Allow the superuser oozie to impersonate any members of the group group1 and group2</description>
    </property>