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)
相关推荐
Misnearch42 分钟前
agent架构学习
学习·架构
li星野1 小时前
【学习记录】USB连接与枚举全解析:从D+/D-上拉到pyOCD烧录
学习
我命由我123451 小时前
Photoshop - Photoshop 使用魔棒工具选择单独的区域
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
JWASX1 小时前
Java 转 go 学习 - kitex(1)
学习·golang
li星野1 小时前
HAVE — have / has / had (One-Page Notes)
学习
传奇开心果编程1 小时前
【声明式UI开发实用技术学与练】第8课 状态提升与下放
学习·flutter·react native·ui·swiftui·composer
计算机毕业编程指导师2 小时前
计算机毕设怎么做?Python+Hadoop的跨平台消费者评论情感分析与数据可视化系统实战 源码 毕业设计 选题推荐 毕设选题 数据分析
大数据·hadoop·python·计算机·spark·课程设计·消费者评论
阳光九叶草LXGZXJ10 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
卷毛迷你猪12 小时前
快速实验篇(B16)用户级预测可行性审计(否定性意见)
大数据·hadoop·数据挖掘·聚类
mlidongfeng13 小时前
【学习】mKernel 分析
学习