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)
相关推荐
Mephisto.java28 分钟前
【大数据学习 | Spark-Core】Spark提交及运行流程
大数据·学习·spark
PandaCave1 小时前
vue工程运行、构建、引用环境参数学习记录
javascript·vue.js·学习
yuwinter1 小时前
鸿蒙HarmonyOS学习笔记(2)
笔记·学习·harmonyos
red_redemption1 小时前
自由学习记录(23)
学习·unity·lua·ab包
幽兰的天空2 小时前
默语博主的推荐:探索技术世界的旅程
学习·程序人生·生活·美食·交友·美女·帅哥
沐泽Mu2 小时前
嵌入式学习-C嘎嘎-Day05
开发语言·c++·学习
你可以叫我仔哥呀3 小时前
ElasticSearch学习笔记三:基础操作(一)
笔记·学习·elasticsearch
脸ル粉嘟嘟3 小时前
GitLab使用操作v1.0
学习·gitlab
路有瑶台3 小时前
MySQL数据库学习(持续更新ing)
数据库·学习·mysql
青云交4 小时前
大数据新视界 -- Hive 数据仓库:构建高效数据存储的基石(下)(2/ 30)
大数据·数据仓库·hive·数据安全·数据分区·数据桶·大数据存储