当前位置: 首页 > news >正文

数据建设实践之大数据平台(五)安装hive

安装hive

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

[bigdata@node101 software]$ tar -zxvf hive-3.1.3-with-spark-3.3.1.tar.gz -C /opt/services
[bigdata@node101 services]$ mv apache-hive-3.1.3-bin apache-hive-3.1.3   

配置环境变量

export JAVA_HOME=/opt/services/jdk1.8.0_161
export ZK_HOME=/opt/services/zookeeper-3.5.7
export HADOOP_HOME=/opt/services/hadoop-3.3.5
export HIVE_HOME=/opt/services/apache-hive-3.1.3
export PATH=$PATH:$JAVA_HOME/bin:$ZK_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin

分发环境变量

[bigdata@node101 bin]$ sudo ./bin/xsync /etc/profile.d/bigdata_env.sh 

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

[bigdata@node101 ~]$ source /etc/profile

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

[bigdata@node101 software]$ cp mysql-connector-java-8.0.18.jar /opt/services/apache-hive-3.1.3/lib/ 

解决jar包冲突

[bigdata@node101 ~]$ 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文件

<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://node101: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://node101:9083</value>  </property><property><name>hive.server2.thrift.port</name><value>10000</value></property><property><name>hive.server2.thrift.bind.host</name><value>node101</value></property><property><name>hive.users.in.admin.role</name><value>bigdata</value></property>	  <property><name>hive.security.authorization.enabled</name><value>true</value></property><!--Spark依赖位置--><property><name>spark.yarn.jars</name><value>hdfs://mycluster:8020/spark-jars/*</value></property>	  <!--Hive执行引擎--><property><name>hive.execution.engine</name><value>spark</value></property><!--提交任务超时时间,单位ms--><property><name>hive.spark.client.connect.timeout</name><value>100000ms</value></property>

配置日志文件

[bigdata@node101 conf]$ cp hive-exec-log4j2.properties.template  hive-exec-log4j2.properties
[bigdata@node101 conf]$ cp hive-log4j2.properties.template hive-log4j2.properties

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

property.hive.log.dir = /opt/services/apache-hive-3.1.3/logs

编辑hive-env.sh

[bigdata@node101 conf]$ cp hive-env.sh.template hive-env.sh
[bigdata@node101 conf]$ vim hive-env.sh

export HADOOP_HEAPSIZE=1024

创建元数据库

[bigdata@node101 conf]$ mysql -uroot -p'123456'
mysql>  create database if not exists metastore  DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 

初始化元数据库

[bigdata@node101 bin]$ schematool -initSchema -dbType mysql -verbose 

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

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脚本

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

授权hive.sh

[bigdata@node101 bin]$ chmod +x hive.sh 

分发hive.sh

[bigdata@node101 bin]$ xsync  hive.sh

copy到其他机器

[bigdata@node102 bin]$ scp -r bigdata@node101:/opt/services/apache-hive-3.1.3/ /opt/services/apache-hive-3.1.3/                          
[bigdata@node103 bin]$ scp -r bigdata@node101:/opt/services/apache-hive-3.1.3/ /opt/services/apache-hive-3.1.3/ 

启动hive

[bigdata@node101 bin]$ hive.sh start 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 企业网络实验(vmware虚拟机充当DHCP服务器)所有IP全部保留,只为已知mac分配固定IP
  • 从产品手册用户心理学分析到程序可用性与易用性的重要区别
  • 启智畅想火车类集装箱号码识别技术,软硬件解决方案
  • 新一代大语言模型 GPT-5 对工作与生活的影响及应对策略
  • LDAPWordlistHarvester:基于LDAP数据的字典生成工具
  • django-ckeditor富文本编辑器
  • 团体程序设计天梯赛-练习集
  • Ubuntu上安装配置samba服务
  • 【Quart 框架——来源于Flask的强大且灵活的异步Web框架】
  • 【 香橙派 AIpro评测】烧系统运行部署LLMS大模型跑开源yolov5物体检测并体验Jupyter Lab AI 应用样例(新手入门)
  • K8S 上部署 Emqx
  • 【C++】C++中的堆和栈介绍和区别
  • 酷克数据亮相第13届PostgreSQL中国技术大会,获数据库杰出贡献奖
  • LVS+Keepalive高可用
  • git commit时报错,LF will be replaced by CRLF the next time Git touches it
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • Apache Zeppelin在Apache Trafodion上的可视化
  • canvas 绘制双线技巧
  • CentOS7简单部署NFS
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • js数组之filter
  • leetcode46 Permutation 排列组合
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • 闭包,sync使用细节
  • 创建一个Struts2项目maven 方式
  • 复杂数据处理
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 字符串匹配基础上
  • 从如何停掉 Promise 链说起
  • ​1:1公有云能力整体输出,腾讯云“七剑”下云端
  • ​queue --- 一个同步的队列类​
  • ​香农与信息论三大定律
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (el-Date-Picker)操作(不使用 ts):Element-plus 中 DatePicker 组件的使用及输出想要日期格式需求的解决过程
  • (Git) gitignore基础使用
  • (MATLAB)第五章-矩阵运算
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (官网安装) 基于CentOS 7安装MangoDB和MangoDB Shell
  • (回溯) LeetCode 131. 分割回文串
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (实战篇)如何缓存数据
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • (转)ABI是什么
  • (转)Linux整合apache和tomcat构建Web服务器
  • .gitignore文件---让git自动忽略指定文件
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .NET 5种线程安全集合
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .NET 跨平台图形库 SkiaSharp 基础应用