[安装] HIVE搭建环境

news2024/11/16 14:47:13

一、生产环境hive集群架构

参考:

 hive2.3.7安装记录

hive基础入门与环境的搭建

基础篇七 Hive-2.3.9安装与配置

大数据之Hive 集群搭建 完整使用

数仓(十)hive的Metastore机制

二、前言快读

Hive安装分类

主要是metastore的服务搭建方式的却分,hive的搭建方式可以分为如下几种方式:

  1. ​ Local/Embedded Metastore Database(Derby)
  2. ​ Remote Metastore Database
  3. ​ Local/Embedded Metastore Server
  4. ​ Remote Metastore Server

​ 根据上述分类,可以简单归纳为以下三类

  1. ​ 使用Hive自带的内存数据库Derby作为元数据存储
  2. ​ 使用远程数据库mysql作为元数据存储
  3. ​ 使用本地/远程元数据服务模式安装Hive

三、hive的安装

  1. 下载,上传,解压

常规的拷贝hive的安装包hive-xxxxx.tar.gz文件,解压缩之后

tar zxvf hive-xxxx.tar.gz  hive-xxxx
  1. 添加hive环境变量的配置

添加内容:
#HIVE_HOME
export HIVE_HOME=/opt/module/hive
export PATH= ................................

  1. 修改配置文件

配置hive-site.xml,和新冠的日志配置项目

其中hive-site.xml文件核心配置项目:

<configuration>
    <property>
        <name>hive.metastore.warehouse.dir</name>
        <value>/data/hive/warehouse/</value>
        <property>
            <name>hive.exec.scratchdir</name>
            <value>/data/hive/tmp</value>
        </property>
        <property>
            <name>hive.querylog.location</name>
            <value>/data/hive/log</value>
        </property>
        <!--    
<property><name>hive.server2.authentication</name><value>NONE</value><description>
      Expects one of [nosasl, none, ldap, kerberos, pam, custom].
      Client authentication types.
        NONE: no authentication check
        LDAP: LDAP/AD based authentication
        KERBEROS: Kerberos/GSSAPI authentication
        CUSTOM: Custom authentication provider
                (Use with property hive.server2.custom.authentication.class)
        PAM: Pluggable authentication module
        NOSASL:  Raw transport
    </description></property>

-->
        <property>
            <name>hive.server2.thrift.client.user</name>
            <value>ljgk</value>
            <description>Username to use against thrift client</description>
        </property>
        <property>
            <name>hive.server2.thrift.client.password</name>
            <value>123456</value>
            <description>Password to use against thrift client</description>
        </property>
        <!--mysql connection-->
        <property>
            <name>javax.jdo.option.ConnectionURL</name>
            <value>jdbc:mysql://172.18.8.77:3306/hive_metastore_tjwq?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
            <description>数据库连接</description>
        </property>
        <property>
            <name>javax.jdo.option.ConnectionDriverName</name>
            <value>com.mysql.jdbc.Driver</value>
            <description/>
        </property>
        <property>
            <name>javax.jdo.option.ConnectionUserName</name>
            <value>root</value>
            <description/>
        </property>
        <property>
            <name>javax.jdo.option.ConnectionPassword</name>
            <value>123456</value>
            <description/>
        </property>
      	<property>
   					 <name>hive.metastore.schema.verification</name>
   					 <value>false</value>
				</property>
    </configuration>

拷贝jdbc驱动

## 类似如下,请更换对应的jdbc驱动jar包
cd /Users/jinxingguang/.m2/repository/mysql/mysql-connector-java/8.0.25
		scp mysql-connector-java-8.0.25.jar root@node01:/opt/bigdata/hive-2.3.9/lib/

原因:拷贝jdbc依赖包,用来支持hivemetastore服务中对底层mysql元数据库的连接;

  1. 解决日志jar包冲突

  1. 初始化元数据库

cd $HIVE_HOME/bin
./bin/schematool -dbType mysql -initSchema

6.启动hive,测试是否可用

$HIVE_HOME/bin/hive

如果可以正常访问即可,使用show databases;命令查看是否可用;

后台启动hive服务

分别启动hivemetastore和hiveserver2服务

新建hivemetastore和hiveserver2的输出日志路径:

#hivemetastore
mkdir -p /data/hive/hivemetastore/logs/

#hiveserver2
mkdir -p /data/hive/hiveserver2/logs/

启动hivemetastore

nohup hive --service metastore >/data/hive/hivemetastore/logs/metastore-log`date +%Y-%m-%d`.log 2>&1 &

jps查看集群信息

如果有RunJar进程则查看进程,有metastore说明metastore远程服务已经启动;

启动hivesever2:

nohup hive --service hiveserver2 >/data/hive/hiveserver2/logs/hiveserver2-log`date +%Y-%m-%d`.log 2>&1 &

客户端只用配置如下即可(未验证,待确认):

hive-site.xml 配置(客户端) 

<?xmlversion="1.0"?>
<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<configuration>
<property>  
  <name>hive.metastore.warehouse.dir</name>  //数据库储存路径
  <value>/user/hive_remote/warehouse</value>  
</property>  
   
<property>  
  <name>hive.metastore.local</name>  //注意这里是false, 不是本地模式
  <value>false</value>  
</property>  
 
<property>  
  <name>hive.metastore.uris</name>  //注意这里是false, 不是本地模式
  <value>thrift://hadoop03:9083</value>  
</property>  
</configuration>

注意:如果有多个 metastore 服务器, 将 URL 之间用逗号分隔, metastore 服务器 URL 的格式为 thrift:host:port thrift://127.0.0.1:9083

hive的web ui  访问地址:

http://172.18.8.208:10002/

四、常见问题及解决

问题一:链接beeline时,设置无密码登录

客户端启动beeline链接

!connect jdbc:hive2://hadoop03:10000/  

或者,  直接命令行界面输入如下,即可进入(如果需要输入免密时候,直接按回车键即可):

beeline -u jdbc:hive2://hadoop03:10000/  -n {your_username}

按照ctl+c即可退出链接界面

常见问题配置:
如果使用beeline访问的时候,需要账户密码,则可以使用如下,可以参考:beeline连接hive用户密码。

主要操作如下,  修改hadoop的core-site.xml文件

在文件中添加以下内容,设置代理用户:

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

然后重启hadoop集群(包含hdfs集群和yarn集群)

sbin/stop-dfs.sh
sbin/stop-yarn.sh

sbin/start-dfs.sh
sbin/start-yarn.sh

问题二:hive表中出现中文乱码的解决方法

解决hive表中文乱码问题

 

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

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

相关文章

[rsync] 基于rsync的同步

环境 Linux&#xff1a;CentOs7.5 rsync: 3.1.2 rsync安装 一般安装系统时会自带rsync&#xff0c;可通过如下命令查看已经安装的版本信息 rsync --version如果系统未安装&#xff0c;可通过如下方式安装 yum安装【建议】 使用root用户执行yum安装 yum install -y rsync安…

代码随想录刷题记录day37 0-1背包+分割等和子集

代码随想录刷题记录day37 0-1背包分割等和子集 0-1背包 问题&#xff1a;有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品只能用一次&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 例题&#xf…

操作系统实验五 进程间通信-管道通信

实验目的 1.掌握利用管道机制实现进程间的通信的方法 2.了解利用消息缓冲队列机制实现进程间的通信的方法 3..了解利用共享存储区机制实现进程间的通信的方法 五个题目如下 1. 函数int pipe(int fd[2])创建一个管道&#xff0c;管道两端可分别用描述字fd[0]以及fd[1]来描述。需…

多元宇宙算法求解电力系统多目标优化问题(Matlab实现)【电气期刊论文复现与创新】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f389;作者研究&#xff1a;&#x1f3c5;&#x1f3c5;&#x1f3c5;本科计算机专业&#xff0c;研究生电气学硕…

SpringCloud项目使用Nacos进行服务的注册

本篇介绍Spring cloud项目使用Nacos作为注册中心来进行服务注册及服务发现&#xff0c;并进行简单的测试来验证。 一、简介 nacos是一个集服务发现、服务配置、服务元数据以及流量管理于一体的管理中心&#xff0c;能帮助我们更好的发现、配置和管理微服务。 注意&#xff1…

家政公司网站毕业设计,家政服务系统设计与实现,毕业设计论文源码开题报告需求分析

项目背景和意义 目的&#xff1a;本课题主要目标是设计并能够实现一个基于web网页的家政服务预约系统&#xff0c;整个网站项目使用了B/S架构&#xff0c;基于java的springboot框架下开发&#xff1b;管理员通过后台录入信息、管理信息&#xff0c;设置网站信息&#xff0c;管理…

JS项目打包之ROLLUP.JS入门

一、目的 Rollup是一个用于JavaScript的模块打包器&#xff0c;它将小块代码编译成更大、更复杂的东西&#xff0c;例如库或应用程序。它为JavaScript ES6版本中包含的代码模块使用了新的标准化格式&#xff0c;而不是以前的特殊解决方案&#xff0c;如CommonJS和AMD。ES模块可…

Win10安装Nacos

Win10安装Nacos 文章目录Win10安装Nacos前言下载Nacos安装Nacos验证前言 最近在学微服务的东西&#xff0c;使用的是 Spring Cloud Alibaba 生态&#xff0c;Nacos就是其中关键的一环。 这是 Nacos 的官网地址&#xff1a;https://nacos.io/zh-cn/index.html 官网的文档对于…

Python中用PyTorch机器学习神经网络分类预测银行客户流失模型

分类问题属于机器学习问题的类别&#xff0c;其中给定一组特征&#xff0c;任务是预测离散值。分类问题的一些常见示例是&#xff0c;预测肿瘤是否为癌症&#xff0c;或者学生是否可能通过考试。 最近我们被客户要求撰写关于银行客户流失的研究报告&#xff0c;包括一些图形和…

@Scheduled定时任务搭配Redis防止多实例定时重复调用

有个Redis安装使用教程&#xff0c;可视化界面&#xff0c;有需要的话&#xff0c;可以打开这个链接去看一下 https://blog.csdn.net/weixin_45507672/article/details/105973279 创建个maven项目&#xff0c;在pom.xml文件加上以下依赖 <dependency><groupId>or…

4EVERLAND专用网关公告,免费体验

我们很高兴地宣布发布 4EVERLAND 专用 IPFS 网关&#xff01;与 4EVERLAND 公共网关一起&#xff0c;4EVERLAND 专用网关将为全世界的开发者和用户提供更快、更稳定地访问更能体现其品牌形象的 IPFS 内容。 专用网关的好处&#xff1a; 全球分布的边缘节点提供全球加速无速率…

[附源码]计算机毕业设计快转二手品牌包在线交易系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Spring Boot 入门到精通(二)

文章目录五、SpringBoot整合MyBatis5.1 mapper 配置5.2 mapper映射配置&#xff1a;配置文件方式5.3 注解配置方式六. 自定义部分SpringMvc配置。6.1 SpringBoot整合日期转换器6.1.1 配置原理6.1.2 日期转换器整合6.2 SpringBoot整合拦截器七. Spring Boot 自定义日志配置&…

C++11特性-类的改进

1.构造函数 1.委托构造函数&#xff1a;允许同一个类的构造函数调用其他构造函数&#xff0c;简化变量初始化 class BB { public:BB() {}BB(int max) {this->m_max max > 0 ? max : 100;cout << "max " << this->m_max << endl;}BB(i…

【ATF】bootloader与安全相关启动分析

这个文章的内容不只是指的ATF启动这个部分&#xff0c;其实ATF是TF-A&#xff0c;这个是一个启动框架&#xff0c;所以今天我们来看看bootloader这部分的启动代码。后续继续补充&#xff01;&#xff01;&#xff01; 第一部分参考的内容来自&#xff1a;https://mp.weixin.qq…

美食餐厅网站毕业设计,餐厅座位预定系统设计与实现,毕业设计怎么写论文毕设源码开题报告需求分析怎么做

项目背景和意义 目的&#xff1a;本课题主要目标是设计并能够实现一个基于java的公司企业网站&#xff0c;整体基于B/S架构&#xff0c;技术上使用基于java的springboot框架来实现&#xff1b;通过后台添加公司资讯、公司产品、公司产品案例、查看注册用户、查看留言等&#xf…

【无人机分配】一种无人机实时最优任务分配模型附matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

解决Android嵌套H5,自定义控制页面能否实现下拉刷新功能

目录使用场景问题描述思路分析解决方案结语使用场景 关于Android嵌套H5页面使用下拉刷新功能的问题&#xff1a;当我们在Android中使用第三方框架SmartRefreshLayout实现App的下拉刷新功能时&#xff0c;如果H5页面有部分功能设计到上下滑动的话&#xff0c;就会引起“误触”下…

Jenkins Kubernetes 应用部署与容器构建

Jenkins & Kubernetes 应用部署与容器构建 文章目录Jenkins & Kubernetes 应用部署与容器构建1. 前言2. Jenkins 配置 kubernetes credentials3. Jenkins 插件3.1 安装 Kubernets Plugin3.2 安装 Docker Plugin3.3 安装 Git Plugin4. Jenkins 连接 minikube 集群5. 配置…

MQ高级(一)消息可靠性

消息从生产者发送到exchange&#xff0c;再到queue&#xff0c;再到消费者&#xff0c;有哪些导致消息丢失的可能性&#xff1f; &#xff08;1&#xff09;发送时丢失&#xff1a; 1️⃣生产者发送的消息未送达exchange 2️⃣消息到达exchange后未到达queue &#xff08;2&…