idea中如何连接hive

一、准备工作

1、添加依赖

添加hive-jdbc 和hadoop-common 的依赖。

注意: 此处添加的依赖要和自己服务器上的版本对应上。

  1. <!–添加所用hive版本的jdbc依赖 –>
  2. <dependency>
  3.          <groupId>org.apache.hive</groupId>
  4.          <artifactId>hive-jdbc</artifactId>
  5.          <version>1.2.1</version>
  6. </dependency>
  7. <!–添加所用hadoop版本的common依赖 –>
  8. <dependency>
  9.          <groupId>org.apache.hadoop</groupId>
  10.          <artifactId>hadoop-common</artifactId>
  11.          <version>2.7.2</version>
  12. </dependency>

2、修改 hadoop 和 hive 的配置文件

修改 hadoop 的配置文件

修改 $HADOOP_HOME/etc/hadoop/core-site.XML 配置文件,添加如下配置:

  1.      <!–远程登录 hive –>
  2.      <!–下面的 hadoop 是用户名和用户组,用自己的就可以–>
  3. <property>
  4.      <name>hadoop.proxyuser.hadoop.hosts</name>
  5.      <value>*</value>
  6. </property>
  7.  
  8. <property>
  9.      <name>hadoop.proxyuser.hadoop.groups</name>
  10.      <value>*</value>
  11. </property>
  12.  

修改后需重启集群。

修改 hive 的配置文件

修改 $HIVE_HOME/conf/hive-site.xml 配置文件,添加如下配置:

  1. <!– 指定 hiveserver2 连接的 host –>
  2. <property>
  3.      <name>hive.server2.thrift.bind.host</name>
  4.      <value>hadoop102&lt;/value>
  5. </property>
  6.  
  7. <!– 指定 hiveserver2 连接的端口号 –>
  8. <property>
  9.      <name>hive.server2.thrift.port</name>
  10.      <value>10000</value>
  11. </property>

3、启动hivserver2服务

需要启动hiveserver2的进程。

二、创建 hive 连接

1、打开 Database 窗口

-1

2、创建 Driver

选中 Driver ,并点击

-2

3、配置 Driver 改名(非必需)

-3

下载 Driver 所需依赖

去自己的服务器上 $HIVE_HOME/lib 目录下下载 hive-*.jar 开头的 jar 包

-4

然后去 $HADOOP_HOME/share/hadoop/common 文件下下载 hadoop 的 jar 包

-5

**注意:**此处要是不下载hadoop的jar包的话,之后创建 hive 连接的时候会报错,如下图所示:

-1

将所有 jar 包添加到 Driver 中

点击红框内的加号

-2

添加上述下载的 hive 的和 hadoop 的 jar 包,点击 OK 。

-8

选择 hive 的 JDBC 的 Driver 类

将 jar 包添加后,等 jar 包加载完毕,会在 Class 复选框内出现一个 org.apache.hive.jdbc.HiveDriver 类,选中即可,然后点击OK就创建好了hive的Driver。

-9

4、创建 hive 的连接

点击Hive2

-10

添加hive连接

-11

测试连接是否成功

点击Test Connection,测试是否可以连通,成功则如下图所示:

-12

三、未解决错误

以下错误虽然不影响使用但是,看不到hive中的数据库和表,目前没有找到是什么原因导致的。

注明:hive版本1.2.1,hadoop的版本2.7.2。

-13

错误:enabling autocommit is not supported.

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

标签

发表评论