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

相关文章

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

若依部署Nginx和Tomcat全过程

《若依部署Nginx和Tomcat全过程》文章总结了两种部署方法:Nginx部署和Tomcat部署,Nginx部署包括打包、将dist文件拉到指定目录、配置nginx.conf等步骤,Tomcat部署... 目录Nginx部署后端部署Tomcat部署出现问题:点击刷新404总结Nginx部署第一步:打包

Nginx、Tomcat等项目部署问题以及解决流程

《Nginx、Tomcat等项目部署问题以及解决流程》本文总结了项目部署中常见的four类问题及其解决方法:Nginx未按预期显示结果、端口未开启、日志分析的重要性以及开发环境与生产环境运行结果不一致... 目录前言1. Nginx部署后未按预期显示结果1.1 查看Nginx的启动情况1.2 解决启动失败的

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Nacos集群数据同步方式

《Nacos集群数据同步方式》文章主要介绍了Nacos集群中服务注册信息的同步机制,涉及到负责节点和非负责节点之间的数据同步过程,以及DistroProtocol协议在同步中的应用... 目录引言负责节点(发起同步)DistroProtocolDistroSyncChangeTask获取同步数据getDis