Hive安装-内嵌模式

Hive会自动检测Hadoop的环境变量,如有就必须启动Hadoop

复制代码
上传 压缩包  /opt/modules
解压:
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/installs/
重命名:
mv apache-hive-3.1.2-bin/ hive
配置环境变量:vi /etc/profile
  export HIVE_HOME=/opt/installs/hive
  export PATH=$HIVE_HOME/bin:$PATH
刷新环境变量:
source /etc/profile
配置hive-env.sh
进入这个文件夹下:/opt/installs/hive/conf
cp hive-env.sh.template hive-env.sh
修改hive-env.sh 中的内容:
export HIVE_CONF_DIR=/opt/installs/hive/conf
export JAVA_HOME=/opt/installs/jdk
export HADOOP_HOME=/opt/installs/hadoop
export HIVE_AUX_JARS_PATH=/opt/installs/hive/lib

进入到conf 文件夹下,修改这个文件hive-site.xml
cp hive-default.xml.template hive-site.xml
接着开始修改:
把Hive-site.xml 中所有包含${system:java.io.tmpdir}替换成/opt/installs/hive/tmp。如果系统默认没有指定系统用户名,那么要把配置${system:user.name}替换成当前用户名root。

打开该文件,进行替换:

一个替换了4处

一个替换了4处

启动集群:

复制代码
start-all.sh

给hdfs创建文件夹:

复制代码
[root@yunhe01 conf] # hdfs dfs -mkdir -p /user/hive/warehouse 
[root@yunhe01 conf] # hdfs dfs -mkdir -p /tmp/hive/ 
[root@yunhe01 conf] # hdfs dfs -chmod 750 /user/hive/warehouse 
[root@yunhe01 conf] # hdfs dfs -chmod 777 /tmp/hive

初始化元数据,因为是内嵌模式,所以使用的数据库是derby

复制代码
schematool --initSchema -dbType derby

在hive-site.xml中,3215行,96列的地方有一个非法字符

将这个非法字符,删除,保存即可。

需要再次进行元数据的初始化操作:

复制代码
schematool --initSchema -dbType derby

提示初始化成功!

初始化操作要在hive的家目录执行,执行完毕之后,会出现一个文件夹:

测试是否成功:

复制代码
输入hive  进入后,可以编写sql
hive> show databases;
OK
default

测试内嵌模式

复制代码
-- 进入后可以执行下面命令进行操作:
hive>show databases;  	-- 查看数据库
hive>show tables;  	 	-- 查看表
-- 创建表
hive> create table dog(id int,name string);
hive> select * from dog;
hive> insert into dog values(1,'wangcai');
hive> desc dog; -- 查看表结构
hive> quit; -- 退出

但是内嵌模式有一个弊端:假如有一个窗口在使用你的hive,另一个窗口能进入,但是会报错!

相关推荐
寂柒7 分钟前
序列化与反序列化
linux·网络
lay_liu23 分钟前
ubuntu 安装 Redis
linux·redis·ubuntu
li星野34 分钟前
[特殊字符] Linux/嵌入式Linux面试模拟卷
linux·运维·面试
武子康1 小时前
大数据-253 离线数仓 - Airflow 入门与任务调度实战:DAG、Operator、Executor 部署排错指南
大数据·后端·apache hive
JiMoKuangXiangQu2 小时前
Linux 锁 (4) - seqlock
linux·seqlock
xlp666hub2 小时前
如果操作GPIO可能导致休眠,那么同步机制绝不能采用spinlock
linux·面试
RisunJan2 小时前
Linux命令-mkbootdisk(可建立目前系统的启动盘)
linux·运维·服务器
guoji77882 小时前
2026年Gemini 3 Pro vs 豆包2.0深度评测:海外顶流与国产黑马谁更强?
大数据·人工智能·架构
TDengine (老段)3 小时前
TDengine IDMP 组态面板 —— 工具箱
大数据·数据库·时序数据库·tdengine·涛思数据
网络工程小王3 小时前
【大数据技术详解】——Kibana(学习笔记)
大数据·笔记·学习