创建数据库
CREATE DATABASE [IF NOT EXISTS] database_name
[COMMENT database_comment]
[LOCATION hdfs_path]
[WITH DBPROPERTIES (property_name=property_value, ...)];
LOCATION:指定数据库在hdfs上的存放的目录
例如:在根目录下创建名为hive1的数据库hive1
create database if not exists hive1 location '/hive1';
显示数据库
show databases;
例如:查询以hive开头的数据库
show databases like 'hive*';
显示数据库信息
desc database database_name;
显示数据库详细信息
desc database extended database_name;
使用数据库
USE database_name;
USE DEFAULT;
更改数据库
ALTER DATABASE database_name SET DBPROPERTIES (property_name=property_value, ...);
ALTER DATABASE database_name SET OWNER [USER|ROLE] user_or_role;
ALTER DATABASE database_name SET LOCATION hdfs_path;
ALTER DATABASE … SET DBPROPERTIES 修改数据库的属性(扩展信息)。
ALTER DATABASE … SET LOCATION 语句不会将数据库当前目录的内容移动到新指定的位置。它不会更改与指定数据库下的任何表/分区关联的位置。它仅更改将为该数据库添加新表的默认父目录。这种行为类似于更改表目录不会将现有分区移动到不同位置。
删除数据库
DROP DATABASE [IF EXISTS] database_name [RESTRICT|CASCADE];
默认行为是 RESTRICT,如果数据库不为空,则 DROP DATABASE 将失败。
如果不为空,则采用CASCADE强制删除。