Hive 数据库操作

时间:2022-09-15 01:24:39

1. Hive启动方式

首先确保启动了Metastore服务,Hive中创建的库和表的数据,存储在HDFS中,默认存放在/usr/hive/warehouse

1.1 bin/hive

使用Hive的Shell客户端,可以直接写SQL,执行语句如下:

bin/hive

1.2 hiveserver2

HiveServer2Hive内置的一个ThriftServer服务,提供Thrift端口供其它客户端链接,可以连接ThriftServer的客户端有:Hive内置的 beeline客户端工具(命令行工具);第三方的图形化SQL工具,如DataGrip、DBeaver、Navicat等
Hive 数据库操作
相关启动命令如下:

-- bin/hive --service metastore,启动的是元数据管理服务
-- bin/hive --service hiveserver2,启动的是HiveServer2服务

-- 1. 先启动metastore服务
nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &

-- 2. 然后启动hiveserver2服务
nohup bin/hive --service hiveserver2 >> logs/hiveserver2.log 2>&1 &

-- beenline方式连接,Beeline是JDBC的客户端,通过JDBC协议和Hiveserver2服务进行通信,协议的地址是:jdbc:hive2://node1:10000
-- 3. 启动bin/beeline
/bin/beeline
! connect jdbc:hive2://node1:10000

2. Hive数据库操作

2.1 创建数据库

-- 创建数据库
create database if not exists myhive;

-- 创建数据库并指定hdfs存储位置, 使用location关键字,可以指定数据库在HDFS的存储路径
create database myhive2 location '/myhive2';

2.2 查看数据库详细信息

desc  database  myhive;

2.3 删除数据库

-- 删除一个空的数据库,如果数据库下面有表,那么就会报错
drop database myhive;

-- 强制删除数据库,包含数据库下面的表一起删除
drop database myhive2 cascade;

数据库本质上就是在HDFS之上的文件夹,一个以.db结尾的目录,默认数据库的存放路径:/user/hive/warehouse内;可以通过location关键字在创建的时候指定存储目录。