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 小时前
C++—string(1):string类的学习与使用
开发语言·c++·经验分享·学习·开源·1024程序员节
yue0082 小时前
C#理论学习-WinForm实践开发教程总结
开发语言·学习·c#
Mr.Jessy3 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
CodeLongBear4 小时前
Day02计算机网络网络层学习总结:从协议到路由全解析
学习·计算机网络·dubbo
笨蛋少年派5 小时前
Hive安装部署
数据仓库·hive·hadoop
我先去打把游戏先5 小时前
ESP32开发指南(基于IDF):连接AWS,乐鑫官方esp-aws-iot-master例程实验、跑通
开发语言·笔记·单片机·物联网·学习·云计算·aws
雍凉明月夜6 小时前
人工智能学习中深度学习之python基础之迭代器、生成器、文件处理和模块等
python·深度学习·学习·pycharm
半夏知半秋6 小时前
mongodb的复制集整理
服务器·开发语言·数据库·后端·学习·mongodb
2301_802939907 小时前
从零开始学习Redis(五):多级缓存
redis·学习·缓存
Chunyyyen7 小时前
【第二十周】自然语言处理的学习笔记05
笔记·学习·自然语言处理