版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wx1528159409
目录
一、创建数据库
二、查询数据库
2.1 显示所有数据库(show databases)
2.2 模糊查询数据库(show databases like ' * ')
2.3 显示数据库信息(desc database)
2.4 显示数据库详细信息(desc database extended)
2.5 切换当前数据库(use)
三、修改数据库(alter database ~ set properties( ' ~ ' = ' ~ ' ))
四、删除数据库
DDL(data definition language)数据库定义语言:
关键词:create、alter、drop,对库和表的操作。
hive (default)> create database if not exists hive_db1
> comment 'this is my first database'
> location '/hive_db1'
> with dbproperties('createtime'='12-03');
创建数据库hive_db1,if not exists防止已存在同名数据库报错,comment是给数据库加注释,
with dbproperties后面跟的键值,描述该数据库的属性信息,eg:作者是谁,创建日期是什么时候等;
-> location是指定该数据库在HDFS中的路径 /hive_db1
ps:如果不用location指定路径,数据库在HDFS上默认存储路径是 /user/hive/warehouse/自定义库名.db(会自动生成一个 *.db文件夹)
hive (default)> show databases;
OK
database_name
default
hive_db1
hive (default)> show databases like 'hive*';
OK
database_name
hive_db1
hive (default)> desc database hive_db1;
OK
db_name comment location owner_name owner_type parameters
hive_db1 this is my first database hdfs://hadoop100:9000/hive_db1 kevin USER
hive (default)> desc database extended hive_db1;
OK
db_name comment location owner_name owner_type parameters
hive_db1 this is my first database hdfs://hadoop100:9000/hive_db1 kevin USER {createtime=12-03}
hive (default)> use hive_db1;
OK
Time taken: 0.029 seconds
hive (hive_db1)>
用alter命令修改数据库,只能修改dbproperties,数据库的其他元数据信息(数据库名和所在路径等)是不可修改的。
hive (hive_db1)> alter database hive_db1 set dbproperties('createtime'='2018-12-03');
OK
在hive中查看结果,发现之前的createtime变了
hive (hive_db1)> desc database extended hive_db1;
OK
db_name comment location owner_name owner_type parameters
hive_db1 this is my first database hdfs://hadoop100:9000/hive_db1 kevin USER {createtime=2018-12-03}
也可以新增属性,eg新增一个createname=kevin
hive (hive_db1)> alter database hive_db1 set dbproperties('createname'='kevin');
OK
hive (hive_db1)> desc database extended hive_db1;
OK
db_name comment location owner_name owner_type parameters
hive_db1 this is my first database hdfs://hadoop100:9000/hive_db1 kevin USER {createtime=2018-12-03, createname=kevin}
4.1 删除空数据库(drop database if exists)
hive (hive_db1)> drop database if exists hive_db1;
OK
4.2 删除非空数据库(drop database ~ cascade)
hive (hive_db1)> drop database hive_db1 cascade;
OK