Hive环境准备[重点学习]

1.前提启动hadoop集群

hadoop在统一虚拟机中已经配置了环境变量

启动hdfs和yarn集群

命令:start-all.sh

shell 复制代码
[root@node1 /]# start-all.sh

启动mr历史服务

命令:mapred --daemon start historyserver

shell 复制代码
[root@node1 /]# mapred --daemon start historyserver

检查服务

命令:jps

shell 复制代码
[root@node1 /]# jps
5109 JobHistoryServer

结果是:端口号 对应服务名

例如:5109 JobHistoryServer

2.配置Hive环境变量

回顾shell脚本执行方式

方式1: sh 脚本 注意: 需要进入脚本所在目录,但脚本有没有执行权限不影响执行

方式2: ./脚本 注意: 需要进入脚本所在目录,且脚本必须有执行权限

方式3: /绝对路径/脚本 注意: 不需要进入脚本所在目录,但必须有执行权限

方式4: 脚本 注意: 需要配置环境变量(大白话就是把脚本所在路径共享,任意位置都能直接访问)

注意: hive在统一虚拟机中没有配置环境变量,可以下面步骤配置

配置环境变量

shell 复制代码
[root@node1 /]# vim /etc/profile

在profile文件末尾添加(小技巧G+o快速定位到最后)

export HIVE_HOME=/export/server/apache-hive-3.1.2-bin

export PATH= P A T H : PATH: PATH:HIVE_HOME/bin:$HIVE_HOME/sbin

shell 复制代码
[root@node1 /]# source /etc/profile

最后建议关机拍摄下快照

3.先启动hive服务

后台启动metastore服务: nohup hive --service metastore &

后台启动hiveserver2服务: nohup hive --service hiveserver2 &

查看metastore和hiveserver2进程是否启动: jps 注意: 服务名都叫RunJar,可以通过进程编号区分

服务启动需要一定时间可以使用lsof查看: lsof -i:10000 注意: 如果无内容继续等待,如果有内容代表启动成功

powershell 复制代码
[root@node1 bin]# nohup hive --service metastore &
[1] 13490
nohup: 忽略输入并把输出追加到"nohup.out" 回车

[root@node1 bin]# nohup hive --service hiveserver2 &
[2] 13632
nohup: 忽略输入并把输出追加到"nohup.out" 回车


[root@node1 bin]# jps
13490 RunJar
13632 RunJar


[root@node1 bin]# 
[root@node1 apache-hive-3.1.2-bin]# lsof -i:10000
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    18804 root  520u  IPv6 266172      0t0  TCP *:ndmp (LISTEN)

4.再连接hive服务

一代客户端连接命令: hive 注意: hive直接连接成功,直接可以编写sql语句

二代客户端连接命令: beeline 注意: 以后建议用二代客户端

二代客户端远程连接命令: !connect jdbc:hive2://node1:10000

注意: hive用户名是root 密码为空

一代客户端示例:
shell 复制代码
[root@node1 /]# hive
...
hive> show databases;
OK
default
Time taken: 0.5 seconds, Fetched: 1 row(s)
hive> exit;
二代客户端示例:
shell 复制代码
[root@node1 /]# beeline

# 先输入!connect jdbc:hive2://node1:10000连接
beeline> !connect jdbc:hive2://node1:10000

# 再输入用户名root,密码不用输入直接回车即可
Enter username for jdbc:hive2://node1:10000: root
Enter password for jdbc:hive2://node1:10000:

# 输入show databases;查看表
0: jdbc:hive2://node1:10000> show databases;
INFO  : Concurrency mode is disabled, not creating a lock manager
+----------------+
| database_name  |
+----------------+
| default        |
+----------------+
1 row selected (1.2 seconds)
相关推荐
时间黑客1 天前
SolidWorks百日建模(二)
学习
Webb Yu1 天前
Solana 完整学习路线图
学习
蒸蒸yyyyzwd1 天前
网络编程封装mutex、cond、semaphore学习笔记
笔记·学习
做cv的小昊1 天前
【TJU】信息检索与分析课程笔记和练习(10)专利文献和中文专利检索
经验分享·笔记·学习·全文检索·学习方法·信息检索
天天睡大觉1 天前
Python学习7
windows·python·学习
saoys1 天前
Opencv 学习笔记:滑块(Trackbar)实现动态调整二值化阈值
笔记·opencv·学习
i7i8i9com1 天前
React 19+Vite+TS学习基础-1
前端·学习·react.js
春风有信1 天前
【学术写作】LaTeX基础:从概念理解到基础应用
经验分享·笔记·学习
Larry_Yanan1 天前
Qt安卓开发(一)Qt6.10环境配置
android·开发语言·c++·qt·学习·ui
Pilot-HJQ1 天前
固定 Element UI 表格表头的方法(超简单)
vue.js·学习·css3·html5