Hive之数据库常用操作
本文最后更新于:2 年前
Hive 中数据库的概念本质上是表的一个目录或命名空间。
创建数据库
1 |
|
如果用户没有显式指定数据库,那么就会使用默认的数据库 default 创建数据库;如果创建了已经存在的数据库,那么会报异常。
通过以下命令创建数据库:
1 |
|
如果数据库已经存在,不会报错,但是也不会覆盖之前的数据库。
查询数据库
1 |
|
如果数据库很多,可以使用 like 配合正则表达式进行数据库的筛选,例如:
1 |
|
hive会为每一个数据库创建一个目录,数据库中的表将会以这个数据库目录的子目录形式存储。但有一个例外:default 数据库中的表,因为这个数据库本身就没有自己的目录。
以刚才的测试为例,根据之前在 hive-site.xml中 的配置,在当前伪分布式下,hive 会对应的在
hdfs://192.168.59.100:9000/hive/warehouse 下创建testdb.db(数据库目录以.db作为结尾)。
选中数据库
use 命令可以将某个数据库设置为当前用户使用的工作数据库,格式:
1 |
|
删除数据库
1 |
|
默认情况下,hive不允许用户删除一个包含着表的数据库,如果删除一个包含表的数据库,会报以异常。如果要删除数据库,需要先删除表,再删除数据库。
可以通过关键字 cascade 强制删除数据库,这样可以使 hive 自行删除数据库中的表:
1 |
|
如果删除一个不存在的数据库,则会报异常。为避免因数据库不存在而报异常信息,可以通过以下命令:
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!