数据湖仓一体(四)安装hive

上传安装包到/opt/software目录并解压

bash 复制代码
[bigdata@node106 software]$ tar -zxvf hive-3.1.3-with-spark-3.3.1.tar.gz -C /opt/services
[bigdata@node106 services]$ mv apache-hive-3.1.3-bin apache-hive-3.1.3   

配置环境变量

bash 复制代码
export HIVE_HOME=/opt/services/apache-hive-3.1.3
export $PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZK_HOME/bin:$KAFKA_HOME/bin:$SEA_HOME/bin:$HIVE_HOME/bin

分发环境变量

bash 复制代码
[bigdata@node106 bin]$ sudo ./bin/xsync /etc/profile.d/bigdata_env.sh 

刷新环境变量,5台机器上执行

bash 复制代码
[bigdata@node106 ~]$ source /etc/profile

上传mysql驱动包到hive的lib目录下

bash 复制代码
[bigdata@node106 software]$ cp mysql-connector-java-8.0.18.jar /opt/services/apache-hive-3.1.3/lib/ 

解决jar包冲突

bash 复制代码
[bigdata@node106 ~]$ mv $HIVE_HOME/lib/log4j-slf4j-impl-2.17.1.jar $HIVE_HOME/lib/log4j-slf4j-impl-2.17.1.jar.bak 

配置hive-site.xml文件

XML 复制代码
<property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://node106:3306/metastore?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;allowPublicKeyRetrieval=true</value>
	</property>
	<!-- jdbc 连接的 Driver-->
	<property>
		<name>javax.jdo.option.ConnectionDriverName</name>
		<value>com.mysql.jdbc.Driver</value>
	</property>
	<!-- jdbc 连接的 username-->
	<property>
		<name>javax.jdo.option.ConnectionUserName</name>
		<value>root</value>
	</property>	
	<!-- jdbc 连接的 password -->
	<property>
		<name>javax.jdo.option.ConnectionPassword</name>
		<value>123456</value>
	</property>
	<!-- Hive 元数据存储版本的验证 -->
	<property>
		<name>hive.metastore.schema.verification</name>
		<value>false</value>
	</property>
	<!--元数据存储授权-->
	<property>
		<name>hive.metastore.event.db.notification.api.auth</name>
		<value>false</value>
	</property>
	<!-- Hive 默认在 HDFS 的工作目录 -->
	<property>
		<name>hive.metastore.warehouse.dir</name>
		<value>/user/hive/warehouse</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.metastore.uris</name>
		<value>thrift://node106:9083</value>  
	</property>
	<property>
			<name>hive.server2.thrift.port</name>
			<value>10000</value>
	</property>
	<property>
			<name>hive.server2.thrift.bind.host</name>
			<value>node106</value>
	</property>
	<property>
			<name>hive.users.in.admin.role</name>
			<value>bigdata</value>
	</property>	  
	<property>
			<name>hive.security.authorization.enabled</name>
			<value>false</value>
	</property>	
	<property>
	    <name>hive.execution.engine</name>
	    <value>mr</value>
	</property> 

配置日志文件

bash 复制代码
[bigdata@node106 conf]$ cp hive-exec-log4j2.properties.template  hive-exec-log4j2.properties
[bigdata@node106 conf]$ cp hive-log4j2.properties.template hive-log4j2.properties

修改hive-log4j2.properties,添加日志目录

bash 复制代码
property.hive.log.dir = /opt/services/apache-hive-3.1.3/logs

编辑hive-env.sh

bash 复制代码
[bigdata@node106 conf]$ cp hive-env.sh.template hive-env.sh
[bigdata@node106 conf]$ vim hive-env.sh
bash 复制代码
export HADOOP_HEAPSIZE=1024

创建元数据库

bash 复制代码
[bigdata@node106 conf]$ mysql -uroot -p'123456'
mysql>  create database if not exists metastore  DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 

初始化元数据库

bash 复制代码
[bigdata@node106 bin]$ schematool -initSchema -dbType mysql -verbose 

修改编码集,解决乱码问题

bash 复制代码
mysql>  alter table DBS convert to character set utf8;                 
mysql>  alter table COLUMNS_V2 character set utf8;                 
mysql>  alter table COLUMNS_V2 change COMMENT COMMENT  varchar(256) character set utf8;                                     
mysql>  alter table TABLE_PARAMS change PARAM_VALUE    PARAM_VALUE mediumtext character set utf8;                       
mysql>  alter table PARTITION_KEYS change PKEY_COMMENT  PKEY_COMMENT varchar(4000) character set utf8;                    
mysql>  alter table PARTITION_KEYS character set utf8;  

编写hive.sh脚本

bash 复制代码
[bigdata@node106 bin]$ vim  hive.sh 
bash 复制代码
#!/bin/bash
echo ==================== 启动hive服务 =========================
echo ==================== 启动metastore服务 ====================
ssh node106 "nohup $HIVE_HOME/bin/hive --service metastore > $HIVE_HOME/logs/metastore.log 2>&1 &"
echo ==================== 启动hiveservice2服务 =================
ssh node106 "nohup $HIVE_HOME/bin/hive --service hiveserver2 > $HIVE_HOME/logs/hiveservice2.log 2>&1 &"

授权hive.sh

bash 复制代码
[bigdata@node106 bin]$ chmod +x hive.sh 

分发hive.sh

bash 复制代码
[bigdata@node106 bin]$ xsync  hive.sh

copy到其他机器

bash 复制代码
[bigdata@node107 bin]$ scp -r bigdata@node106:/opt/services/apache-hive-3.1.3/ /opt/services/apache-hive-3.1.3/                          
[bigdata@node108 bin]$ scp -r bigdata@node106:/opt/services/apache-hive-3.1.3/ /opt/services/apache-hive-3.1.3/

启动hive

bash 复制代码
[bigdata@node106 bin]$ hive.sh start 
相关推荐
藦卡机器人16 小时前
中国工业机器人发展现状
大数据·人工智能·机器人
Simon_lca17 小时前
突破合规瓶颈:ZDHC Supplier to Zero(工厂零排放 - 进阶型)体系全攻略
大数据·网络·人工智能·分类·数据挖掘·数据分析·零售
黄焖鸡能干四碗19 小时前
网络安全建设实施方案(Word文件参考下载)
大数据·网络·人工智能·安全·web安全·制造
云境筑桃源哇20 小时前
马踏春风 为爱启航 | 瑞派宠物医院(南部新城旗舰店)盛大开业!打造宠物医疗新标杆!
大数据·宠物
xixixi7777721 小时前
2026 年 03 月 20 日 AI+通信+安全行业日报(来更新啦)
大数据·人工智能·安全·ai·大模型·通信
F36_9_21 小时前
大数据治理平台选型避坑:2026 年 8 大主流系统实测
大数据·数据治理
成长之路51421 小时前
【实证分析】A股上市公司企业劳动力需求数据集(2000-2023年)
大数据
奔跑的呱呱牛21 小时前
GeoJSON 在大数据场景下为什么不够用?替代方案分析
java·大数据·servlet·gis·geojson
Lab_AI21 小时前
电池材料行业数据管理新突破:AI4S驱动的科学数据平台正在重塑电池材料开发范式
大数据·人工智能·ai4s·电池材料开发·电池材料研发·电池材料创新·ai材料研发
FindAI发现力量21 小时前
智能工牌:线下销售场景的数字化赋能解决方案
大数据·人工智能·销售管理·ai销售·ai销冠·销售智能体