无法在指定位置查看配置单元中创建的数据库

f8rj6qna  于 2021-06-03  发布在  Hadoop
关注(0)|答案(3)|浏览(345)

我是新来的Hive。
我已经在配置单元中创建了一个数据库,默认情况下,该数据库是在配置单元仓库中创建的。当我对配置单元仓库运行-ls时,我可以看到创建的数据库practice.db。
用于创建数据库的查询:
创建数据库实践
注解“保存所有练习表”;
我在hive中创建了另一个数据库。当我在创建数据库的路径上运行-ls命令时,无法看到practice\u first.db。
用于创建数据库的查询:
先创建数据库
注解“保存所有练习表”
位置'/somepath in hdfs here';
即使我在Hive仓库实践中检查了\u first.db也不在Hive仓库中。
当我运行show database时,我可以看到数据库列表中的第一个数据库。
任何关于hive在何处创建了practice\u first.db的建议。
提前谢谢。

xqkwcwgp

xqkwcwgp1#

您将能够看到practice\u first.db目录,如果
1) 您可以在默认位置创建数据库。
2) 在create database语句的位置中显式提供目录名practice\ u first.db。

mlnl4t2r

mlnl4t2r2#

只是测试,以确保它应该出现没有任何表被添加,它确实。创建后,请尝试在数据库上使用“描述”来验证路径:

hive> create database test1 COMMENT 'testing' LOCATION '/user/testuser/test1.db';
OK
Time taken: 0.63 seconds
hive> describe database test1;
OK
test1  testing hdfs://nameserviceHA/user/testuser/test1.db        testuser    USER
Time taken: 0.183 seconds, Fetched: 1 row(s)
hive> exit;
$ hadoop fs -ls /user/testuser/ | grep test
drwxr-xr-x   - testuser testgrp          0 2015-02-12 15:43 /user/testuser/test1.db

对默认位置执行相同的操作将自动命名扩展名为.db的目录。此外,本例中的组看起来将是配置单元,而不是用户的组:

hive> drop database test1;
OK
Time taken: 0.379 seconds
hive> create database test1 COMMENT 'testing';                                 OK
Time taken: 0.319 seconds
hive> describe database test1;
OK
test1  testing hdfs://nameserviceHA/user/hive/warehouse/test1.db      testuser    USER
Time taken: 0.263 seconds, Fetched: 1 row(s)
hive> exit;

$ hadoop fs -ls /user/hive/warehouse | grep test1
drwxrwxrwt   - testuser         hive                0 2015-02-12 15:53 /user/hive/warehouse/test1.db
vh0rcniy

vh0rcniy3#

它将在指定的路径上创建 LOCATION 检查hive-1537和这个

相关问题