DataGrip 配置 HiveServer2 远程连接访问

news2025/1/19 20:19:51

文章目录

      • 集群配置 HiveServer2 服务
      • DataGrip 配置 HiveServer2 访问 Hive

集群配置 HiveServer2 服务

1.在 Hive 的配置文件 hive-site.xml 中添加如下参数:

		<!-- 指定 HiveServer2 运行端口,默认为:10000 -->
		<property>
       		 <name>hive.server2.thrift.port</name>
     		 <value>10000</value>
		</property>
		
		<!-- 设置连接主机 -->
    	<property>
       		<name>hive.server2.thrift.bind.host</name>
       		<value>master</value>
     	</property>

		<!-- 设置权限用户 -->
		<property>
	        	<name>hive.users.in.admin.role</name>
	        	<value>root</value>
		</property>	

		<!--自定义远程连接用户名和密码 默认为none,修改成CUSTOM-->
		<property>
			<name>hive.server2.authentication</name>
			<value>CUSTOM</value>
		</property>
 
		<!--指定解析jar包-->
		<property>
			<name>hive.server2.custom.authentication.class</name>
			<value>org.apache.hadoop.hive.contrib.auth.CustomPasswdAuthenticator</value>
		</property>  
 
		<!--设置用户名和密码-->
		<property>
			 <name>hive.jdbc_passwd.auth.root</name><!--用户名为最后一个:root-->
			 <value>000000</value><!--密码-->
		</property>

注意更换成你自己连接的主机地址。

2.在 Hadoop 的核心配置文件 core-site.xml 中添加如下两项参数:

指定集群可以连接的用户,我这里设置为 root 用户。

假如我想指定用户名为 master,则配置项中的 root 必须改为 master,如:hadoop.proxyuser.master.hosts

    <!-- 设置集群的连接用户 -->
    <property>
    	<name>hadoop.proxyuser.root.hosts</name>
    	<value>*</value>
    </property>

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

添加完成后注意分发该文件到其它机器,然后重启 Hadoop。

Hadoop 重启完成后,启动 hive 元数据服务与 hiveserver2 服务:

nohup hive --service metastore &

nohup hive --service hiveserver2 &

连接测试:

连接你绑定的地址并根据提示输入 Hive 的配置文件 hive-site.xml 中指定的用户与其密码。

beeline

!connect jdbc:hive2://master:10000

根据提示输入账号密码(默认都为空,直接按回车跳过即可)

在这里插入图片描述

下列是本人遇到的相关问题以及解决方法。

问题一

连接时出现错误:User: xxx is not allowed to impersonate anonymous (state=08S01,code=0),显示该用户不被允许连接,这是因为在 Hadoop 的核心配置文件 core-site.xml 中没有指定该用户(上方有添加用户模板)或者指定后 Hadoop 集群没有重启,导致配置没有生效。

问题二

如果你在通过 hiveserver2 服务远程插入数据时出现如下错误:FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.StatsTask

解决方法:
在插入的目标库中设置属性 set hive.stats.autogather=false;,关闭配置自动统计列的统计信息。


问题三

使用 HiveServer2 服务时异常停止,JVM 内存溢出:

FAILED: Execution Error, return code -101 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask. Java heap space Exception in thread "HiveServer2-Handler-Pool: Thread-652" java.lang.OutOfMemoryError: GC overhead limit exceeded

解决方法:
修改 Hive 中 conf 目录下的 hive-env.sh 文件,将 export HADOOP_HEAPSIZE=1024 进行调整,可以修改为 4096,视情况而定;

在这里插入图片描述

保存退出,重新启动服务就可以啦。

DataGrip 配置 HiveServer2 访问 Hive

1. 调出控制面板,创建连接:

在这里插入图片描述

选择 Hive 数据源。

在这里插入图片描述

2.配置相关连接信息

账号密码如果没有设置则都为空,密码输入框为隐式显示。

点击 Test Connection 测试连接是否成功,然后下载集群 HiveServer2 远程连接 JDBC 对应驱动版本。

在这里插入图片描述

驱动下载完成后,弹出对应提示:

在这里插入图片描述

此时点击 OK 配置完成,可以发现驱动版本与集群是一致的。

在这里插入图片描述

3.使用

不做过多的赘述了,使用起来还是特别简单便捷的,没有啥难度可言。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/843060.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ELK日志分析系统简介

ELK日志分析系统简介 ElasticsearchLogstashKibana主要功能Kibana日志处理步骤ELK的工作原理 日志服务器 提高安全性 集中存放日志 缺陷 ​ 对日志的分析困难 ELK日志分析系统 Elasticsearch 概述:提供了一个分布式多用户能力的全文搜索引擎 核心概念 接近实时 集群 节…

关于安卓jar包修改并且重新发布

背景&#xff1a; 对于某些jar包&#xff0c;其内部是存在bug的&#xff0c;解决的方法无外乎就有以下几种方法&#xff1a; &#xff08;1&#xff09;通过反射&#xff0c;修改其赋值逻辑 &#xff08;2&#xff09;通过继承&#xff0c;重写其方法 &#xff08;3&#xff0…

SQL-每日一题【1164. 指定日期的产品价格】

题目 产品数据表: Products 写一段 SQL来查找在 2019-08-16 时全部产品的价格&#xff0c;假设所有产品在修改前的价格都是 10 。 以 任意顺序 返回结果表。 查询结果格式如下例所示。 示例 1: 解题思路 1.题目要求我们查找在 2019-08-16 时全部产品的价格&#xff0c;假设所…

【Kubernetes】Kubernetes之Kubeadm部署

Kubeadm 一、Kubeadm 部署1. 环境准备2. 所有节点安装 docker3. 所有节点安装 kubeadm&#xff0c;kubelet 和 kubectl4. 部署 K8S 集群4.1 配置 master01 节点4.2 配置 node 节点 二、Kubeadm 高可用部署1. 环境准备2. 所有节点安装 docker2. 所有节点安装kubeadm&#xff0c;…

【大数据】Flink 详解(一):基础篇

Flink 详解&#xff08;一&#xff09;&#xff1a;基础篇 1、什么是 Flink &#xff1f; Flink 是一个以 流 为核心的高可用、高性能的分布式计算引擎。具备 流批一体&#xff0c;高吞吐、低延迟&#xff0c;容错能力&#xff0c;大规模复杂计算等特点&#xff0c;在数据流上提…

如何搭建一个成功的酒店小程序?

随着移动互联网的发展&#xff0c;小程序成为了不可忽视的商业工具之一。对于酒店行业来说&#xff0c;开发一个酒店预订小程序可以为客户提供更加便捷的预订方式&#xff0c;同时也带来了更多的商机。下面&#xff0c;我们将介绍一个简单的搭建流程&#xff0c;帮助新手快速上…

公会发展计划 (GAP) 第 4 季:塑造 YGG 的成就版图

基于前三个赛季所取得的成果&#xff0c;Yield Guild Games&#xff08;YGG&#xff09;自豪地宣布推出 公会发展计划&#xff08;GAP&#xff09;第 4 季。公会最近的一些精英成员将在本季加入公会&#xff0c;公会成员将在全新的任务中磨练自己的技能&#xff0c;建立自己在 …

HOT80-划分字母区间

leetcode原题链接&#xff1a;划分字母区间 题目描述 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段&#xff0c;同一字母最多出现在一个片段中。注意&#xff0c;划分结果需要满足&#xff1a;将所有划分结果按顺序连接&#xff0c;得到的字符串仍然是 s 。返回…

ArcGIS Pro简介下载安装地址

ArcGIS Pro简介 ArcGIS Pro是一款功能强大的地理信息系统&#xff08;GIS&#xff09;软件&#xff0c;由Esri开发。它为用户提供了一种直观、灵活且高效的方式来处理、分析和可视化地理数据。ArcGIS Pro具有现代化的用户界面和工作流程&#xff0c;使用户能够更好地利用地理信…

修改k8s pod的挂载目录

1、找到挂载的服务 kubectl get service2、编辑pod的环境配置 kubectl edit deployment vendor-basic-bill-executor3、找到需要挂载的目录

Kubernetes(K8s)从入门到精通系列之十:使用 kubeadm 创建一个高可用 etcd 集群

Kubernetes K8s从入门到精通系列之十&#xff1a;使用 kubeadm 创建一个高可用 etcd 集群 一、etcd高可用拓扑选项1.堆叠&#xff08;Stacked&#xff09;etcd 拓扑2.外部 etcd 拓扑 二、准备工作三、建立集群1.将 kubelet 配置为 etcd 的服务管理器。2.为 kubeadm 创建配置文件…

【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用(含无目标函数,考虑代理模型)

【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用&#xff08;含无目标函数&#xff0c;考虑代理模型&#xff09; 版本更新&#xff1a; 2023/8/5&#xff1a; 1.因BP作为代理模型不稳定&#xff0c;经过测试&#xff0c;libsvm比rf /bp 效果稳定且精…

MSF恶意程序利用——CS上线

Msfvenom是一个Metasploit独立的有效负载生成器&#xff0c;也是msfpayload和msfencode的替代品。是用来生成后门的软件。 申明&#xff1a;本篇文章的用意仅做学习使用&#xff01; 网络搭建环境&#xff1a; 软件&#xff1a;Vmware Workstation 17 攻击机&#xff1a;Ka…

【手撕C语言】多线程

(꒪ꇴ꒪ )&#xff0c;Hello我是祐言QAQ我的博客主页&#xff1a;C/C语言,Linux基础,ARM开发板&#xff0c;软件配置等领域博主&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff0c;让我们成为一个强大的攻城狮&#xff01;送给自己和读者的一句鸡汤&#x1f914;&…

Qt-QSlider样式

文章目录 QSliderQSS 代码QSlider 分析QSlider The slider is the classic widget for controlling a bounded value.It lets the user move a slider handle along a horizontal or vertical groove and translates the handles position into an integer value within the l…

Java课题笔记~ AspectJ 的开发环境(掌握)

AspectJ 的开发环境(掌握) &#xff08;1&#xff09; maven 依赖 <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></depe…

简单动态字符串 sds

Redis 设计了简单动态字符串&#xff08;Simple Dynamic String&#xff0c;SDS&#xff09;的结构&#xff0c;用来表示 字符串。相比于 C 语言中的字符串实现&#xff0c;SDS 这种字符串的实现方式&#xff0c;会提升字符串的操 作效率&#xff0c;并且可以用来保存二进制数据…

Element-Plus DatePicker获取时间戳

文章目录 0、先上答案1、渔&#xff1f;1-1 Element-Plus 官网1-2 溯源 Day.js 0、先上答案 <!-- 秒 --><el-date-pickerv-model"timeStamp"type"datetime"value-format"X"/><!-- 毫秒 --><el-date-pickerv-model"tim…

Spring Boot 最佳实践

本文翻译自国外论坛 medium&#xff0c;原文地址&#xff1a;https://medium.com/raviyasas/spring-boot-best-practices-for-developers-3f3bdffa0090 Spring Boot 是一种广泛使用且非常流行的企业级高性能框架。以下是一些最佳实践和一些技巧&#xff0c;我们可以使用它们来…

【Git分布式版本控制系统一】你还不会用Git进行项目管理?

&#x1f942;(❁◡❁)您的点赞&#x1f44d;➕评论&#x1f4dd;➕收藏⭐是作者创作的最大动力&#x1f91e; 前言 众所周知&#xff0c;分布式版本控制系统git是工作以后进行项目管理必不可少的工具&#xff0c;我将繁杂的命令进行了归类整理和总结&#xff0c;供大家参考学习…