Centos7.x 搭建部署 Hive 3.1.2单台+集群

2023-10-19 23:58

本文主要是介绍Centos7.x 搭建部署 Hive 3.1.2单台+集群,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.基础环境Hadoop3.2.2集群

mysql数据库
基于centos部署hadoop集群

2.Hive 的安装

1.下载hive安装文件

wget https://mirrors.bfsu.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz

2.下载后进行解压 tar -zxf
3.进行配置文件修改,进入conf文件夹

cp hive-default.xml.template hive-site.xml
cp hive-env.sh.template hive-env.sh
cp hive-log4j2.properties.template hive-log4j2.properties

4.修改hive-site.xml,一下mysqlip需替换,以及密码信息

<configuration><property><name>hive.metastore.schema.verification</name><value>false</value></property><property><name>hive.metastore.warehouse.dir</name><value>/data/hive/warehouse</value></property><property><name>hive.exec.mode.local.auto</name><value>false</value><description> Let Hive determine whether to run in local mode automatically </description></property><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://mysqlip:3306/hive??useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false&amp;allowMultiQueries=true</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>root</value></property><!-- 显示表的列名 --><property><name>hive.cli.print.header</name><value>true</value></property><!-- 显示数据库名称 --><property><name>hive.cli.print.current.db</name><value>true</value></property><property><name>hive.exec.local.scratchdir</name><value>/data/apache-hive-3.1.2/tmp/</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/data/apache-hive-3.1.2/tmp/</value><description>Temporary local directory for added resources in the remote file system.</description></property>
</configuration>

5.修改hive-env.sh

​export HADOOP_HEAPSIZE=1024
HADOOP_HOME=/data/hadoop-3.2.2
export HIVE_CONF_DIR=/data/apache-hive-3.1.2/conf

6.修改hive-log4j2.properties

property.hive.log.dir = /data/apache-hive-3.1.2/logs

7.编辑bin目录下的hive-config.sh

export JAVA_HOME=/usr/java/java-1.8.0
export HADOOP_HOME=/data/hadoop-3.2.2
export HIVE_HOME=/data/apache-hive-3.1.2

8.修改环境变量

export HADOOP_HOME="/data/hadoop-3.2.2"
export HIVE_HOME="/data/apache-hive-3.1.2"export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_HOME/lib/native"export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
export CLASSPATH=$HADOOP_HOME/share/hadoop/common/*:$HADOOP_HOME/share/hadoop/common/lib/*:$hive_HOME/lib

9.下载mysql驱动包放到lib目录下

wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.48/mysql-connector-java-5.1.48.jar

10.检查guava版本是否一直,不一致则统一替换为高版本,不然初始化sql会报错
Exception in thread “main” java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)
jar包目录
/apache-hive-3.1.2-bin/lib/
hadoop/share/hadoop/common/lib/
这里将hive的guava的jar包删除,从hadoop的进行复制

11.执行数据库初始化命令

schematool -initSchema -dbType mysql

Initialization script completed
schemaTool completed
表示初始化成功,打开数据库,可以看到相关表信息。

12.启动hive,执行命令

hive

三.基础命令

1.查看所有数据库列表

show databases;

2.创建数据库

create database db_test;

3.查看创建的数据库在 HDFS 中的信息(随意找一个 HDFS 客户端节点)

hadoop fs -ls /data/hive/warehouse
hdfs dfs -ls /user/hive/warehouse

4.创建表

use db_test;
create table t_test(id string,name string,age int);
insert into table_test values ('1000','名称',21);
select * from table_test;

四.集群部署

1.在hive-site.xml添加以下配置

  <property><name>hive.server2.active.passive.ha.enable</name><value>true</value><description>Whether HiveServer2 Active/Passive High Availability be enabled when Hive Interactive sessions are enabled.This will also require hive.server2.support.dynamic.service.discovery to be enabled.</description></property>

2.拷贝hive安装包到其他服务器

scp -r apache-hive-3.1.2 hadoop2:/data
scp -r apache-hive-3.1.2 hadoop3:/data

3.将其他两台的环境变量保持和当前一直
4.hiveserver2 服务启动

[root@master ~]# nohup hive --service hiveserver2 --hiveconf hive.server2.thrift.port=10001 &

5.访问控制台
http://hadoop1:10002/

这篇关于Centos7.x 搭建部署 Hive 3.1.2单台+集群的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/243211

相关文章

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

Windows Server 2025 搭建NPS-Radius服务器的步骤

《WindowsServer2025搭建NPS-Radius服务器的步骤》本文主要介绍了通过微软的NPS角色实现一个Radius服务器,身份验证和证书使用微软ADCS、ADDS,具有一定的参考价... 目录简介示意图什么是 802.1X?核心作用802.1X的组成角色工作流程简述802.1X常见应用802.

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Spring Cloud GateWay搭建全过程

《SpringCloudGateWay搭建全过程》:本文主要介绍SpringCloudGateWay搭建全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Spring Cloud GateWay搭建1.搭建注册中心1.1添加依赖1.2 配置文件及启动类1.3 测

CentOS7增加Swap空间的两种方法

《CentOS7增加Swap空间的两种方法》当服务器物理内存不足时,增加Swap空间可以作为虚拟内存使用,帮助系统处理内存压力,本文给大家介绍了CentOS7增加Swap空间的两种方法:创建新的Swa... 目录在Centos 7上增加Swap空间的方法方法一:创建新的Swap文件(推荐)方法二:调整Sww

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它