Hive(二):获取HiveConnection,及重现获取过程中的某些问题。

2023-11-15

一:未创建Maven工程,所需jar包都是自己一一找的,结果碰到许多缺包问题,最后我的lib下包为:

 

二:尝试获取HiveConnection,先附上成功获取HiveConnection的代码:

public class Test01Hive {

	private static String driverName = "org.apache.hive.jdbc.HiveDriver";  
	private static String url = "jdbc:hive2://master:10000/default";  
	private static String user = "hive";  
	private static String password = "xujun";  

	public static void main(String[] args) throws Exception {  
		Class.forName(driverName);  
		Connection conn = DriverManager.getConnection(url, user, password);  
		// org.apache.hive.jdbc.HiveConnection@ebe538
		System.out.println(   conn );
	}  
}

 

问题重现1:

开始定义的 url = "jdbc:hive://master:10000/default";  结果报如下错误:

java.sql.SQLException: No suitable driver found for jdbc:hive://master:10000/default
    at java.sql.DriverManager.getConnection(DriverManager.java:596)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at com.berg.hive.test1.api.Test01Hive.getConn(Test01Hive.java:50)
    at com.berg.hive.test1.api.Test01Hive.main(Test01Hive.java:37)

问题1解决:

将url更改为: url = "jdbc:hive2://master:10000/default";  

问题1解决思路来源:

http://stackoverflow.com/questions/33722139/java-sql-sqlexception-no-suitable-driver-found-for-jdbchive-localhost10000  

 

问题重现2:

org.apache.hive.service.cli.HiveSQLException: Failed to open new session:
java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException
(org.apache.hadoop.security.authorize.AuthorizationException): User: hadoop is not allowed to  impersonate hive
    at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:258)
    at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:249)
    at org.apache.hive.jdbc.HiveConnection.openSession(HiveConnection.java:579)
    at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:167)
    at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:107)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at com.berg.hive.test1.api.Test01Hive.getConn(Test01Hive.java:50)
    at com.berg.hive.test1.api.Test01Hive.main(Test01Hive.java:38)
Caused by: org.apache.hive.service.cli.HiveSQLException: Failed to open new session:
java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException
(org.apache.hadoop.security.authorize.AuthorizationException): User: hadoop is not allowed to
impersonate hive

问题2解决:进入hadoop安装目录下,然后切换至etc/hadoop即hadoop-2.6.4/etc/hadoop,修改core-site.xml中文件内容,在原文件内容中添加:

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

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

我的修改后是:

<configuration>
	<property> 
        	<name>fs.defaultFS</name> 
        	<value>hdfs://master:9000</value> 
    	</property> 
    	<property> 
        	<name>hadoop.tmp.dir</name> 
        	<value>file:/mysoftware/hadoop-2.6.4/tmp</value>
    	</property>
    	<property>
        	<name>hadoop.native.lib</name>
        	<value>false</value>
    	</property>

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

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

</configuration>

问题2思路解决来源:
http://stackoverflow.com/questions/16582126/getting-e0902-exception-occured-user-oozie-is-not-allowed-to-impersonate-ooz

 

另外几个链接:

1. 重启mysql服务:

http://wwwlouxuemingcom.blog.163.com/blog/static/209747822013411103950266/

2. Could not open connection to jdbc

http://stackoverflow.com/questions/31150678/java-sql-sqlexception-could-not-open-connection-to-jdbchive2-localhost10000

3.Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

http://stackoverflow.com/questions/35449274/java-lang-runtimeexception-unable-to-instantiate-org-apache-hadoop-hive-ql-meta

 

....................

转载于:https://my.oschina.net/gently/blog/683604

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hive(二):获取HiveConnection,及重现获取过程中的某些问题。 的相关文章

随机推荐

  • Map双列集合的四种遍历方式

    Map双列集合的四种遍历方式 第一种 键找值遍历方式 通过keySet 方法可以获取到所有键组成的Set集合 public Set
  • 关于Streamspot中StreamHash的介绍

    原文 Fast Memory efficient Anomaly Detection in Streaming Heterogeneous Graphs 在阅读这篇文章时 我对于文中所提到的StreamHash方法特别费解 在重复阅读了好几
  • 解决SwipeRefreshLayout和ViewPager滑动冲突的三种方案

    一篇文章读懂android事件消费 事件分发 事件拦截Android 源码分析事件分发机制 事件消费 事件拦截解决SwipeRefreshLayout和ViewPager滑动冲突的三种方案 在SwipeRefreshLayout的内部包一个
  • 论坛系统数据库设计

    论坛系统数据库设计 1 引言 2 QQ 摆烂式 设计 2 1数据表设计猜测 2 2分析增删查改实现方法 2 3分析QQ 摆烂式 的优缺点 2 4改进方法 3 盖楼式 设计 3 1数据表设计猜测 3 2数据表设计优化 4 推荐设计 1 引言
  • Matlab----下载和安装教程

    Matlab 下载 文件中有以下文件 Matlab 安装 步骤1 打开安装软件 步骤2 运行安装软件 在matlab 2018的文件夹下找到setup 选中右键以管理员身份运行 步骤3 选择使用文件安装密钥 然后点击下一步 步骤4 是否接收
  • 【1day】复现金和协同管理平台任意文件读取漏洞

    注 该文章来自作者日常学习笔记 请勿利用文章内的相关技术从事非法测试 如因此产生的一切不良后果与作者无关 目录 一 漏洞描述 二 影响版本 三 资产测绘 四 漏洞复现 一 漏洞
  • Unity3D-VR《静夜诗》3-开始按钮与开始文本信息

    Unity3D VR 静夜诗 3 开始按钮与开始文本信息 1 开始按钮及开始信息文本UI对象的设计 1 1容器对象PanelBeginUI 1 2开始信息文本TextBegin 1 3开始按钮BtnBegin 2 开始按钮实现凝视触发 凝视
  • 521 加速乐多层响应 Cookie逆向 + 代码高度混淆

    网址 aHR0cHM6Ly93d3cubWFmZW5nd28uY24vaS81Mzc2OTc4Lmh0bWw 目录 声明 本文章中所有内容仅供学习交流使用 不用于其他任何目的 不提供完整代码 抓包内容 敏感网址 数据接口等均已做脱敏处理 严
  • 《Centos7——elk+lnmp+zabbix+grafana来分析日志》

    目录 elk lnmp zabbix grafana来分析日志 一 Elasticsearch部署 192 168 234 130 1 上传安装包 2 安装elasticsearch kibana 3 修改es和kibana配置文件 4 启
  • weixin4j开发微信分享案例

    微信官方文档 步骤一 绑定域名 先登录微信公众平台进入 公众号设置 的 功能设置 里填写 JS接口安全域名 备注 登录后可在 开发者中心 查看对应的接口权限 步骤二 引入JS文件 在需要调用JS接口的页面引入如下JS文件 支持https h
  • 关于VUE中v-for循环的dom使用ref获取不到问题

    背景 初学vue做练习项目的时候 基于vue2 0版本使用refs属性获取v for循环的dom时出现获取不到dom的情况 尝试采用原生的方法出现同样的情况 查了很多资料没有找到对应的详细说明 现将我发现的一些问题分享给大家 html部分
  • 量化选股策略搭建(四)(短期策略搭建)

    量化选股策略搭建 四 短期策略搭建 首先我们需要把选股这个问题转化为一个机器学习问题 那么如何转化成机器学习问题呢 机器学习也分两类问题 1 回归问题 2 分类问题 常规的一些方法是预测股价增长来进行选股 回顾问题 这里我们将其转化为一个分
  • ZooKeeper 分布式协调工具

    目录 一 ZooKeeper 概述 二 ZooKeeper Windows 单机版安装 三 ZooKeeper 集群环境下选举过程 四 ZooKeeper 存储数据的过程 五 ZooKeeper 监听 六 java 操作 ZooKeeper
  • 为什么说python简单_为什么很多人都说 Python 简单?

    Python是一门入门简单 精通困难的编程语言 Python是一门比较高阶的语言 在基本语法和使用方面没有C Java那么复杂 因此 对于入门者来说 很接近于自然语言的表述方式 经过短暂的的学习就可以完成一些简单的工作 但是 我认为如果仅用
  • 面试官:有一个 List 对象集合,如何优雅地返回给前端?我懵了。。

    1 业务背景 业务场景中 一个会话中存在多个场景 即一个session id对应多个scene id和scene name 如果你写成如下的聚合模型类 public class SceneVO private String sessionI
  • [leetcode]Python实现-389. 找不同

    389 找不同 描述 给定两个字符串 s 和 t 它们只包含小写字母 字符串 t 由字符串 s 随机重排 然后在随机位置添加一个字母 请找出在 t 中被添加的字母 示例 输入 s abcd t abcde 输出 e 解释 e 是那个被添加的
  • oracle 数据库基础知识复习

    1 单表的数据查询 1 1指定字段的数据记录查询 select field1 field2 FROM 表名 WHERE CONDITION 例 select t stuname t age t sex from STUINFO t wher
  • curl命令介绍与使用

    curl 全称CommandLine URL 或 CommandLine Uniform Resource Locator 顾名思义 curl命令是在命令行方式下工作 利用URL的语法进行数据的传输或者文件的传输 这个命令行工具现在多用于U
  • 基于Python Django Mysql 开发的宠物用品商城

    最近做的一个程序设计 核心是基于django做一个商城 功能包含登录 注册 商品浏览 购物车 支付模块 支付宝沙箱支付 评价 轮播图 开发环境 Python版本 3 8 7 Django版本 3 1 5 数据库版本 mysql8 数据库管理
  • Hive(二):获取HiveConnection,及重现获取过程中的某些问题。

    为什么80 的码农都做不了架构师 gt gt gt 一 未创建Maven工程 所需jar包都是自己一一找的 结果碰到许多缺包问题 最后我的lib下包为 二 尝试获取HiveConnection 先附上成功获取HiveConnection的代