2

我在 RHEL 上安装了 Hive cdh4。每当我从一个目录启动 Hive 时,它​​都会在其中创建 metastore_db 目录和一个 derby.log 文件。这是正常行为吗?此外,当我创建表时,从特定目录启动 Hive;当我从目录启动 Hive 时,我无法看到该表,除此之外。

例如,假设我从我的主目录启动 Hive,即 $HOME 或 ~,然后我在 Hive 中创建表。但是当我从 /path/to/my/Hive/directory 启动 Hive 并显示表时,我刚刚创建的表不会出现。但是,如果再次从我的主目录启动 Hive 并查找表,我可以看到该表。

此外,如果我在 hive-site.xml 中进行一些更改,它们只会被 Hive 忽略。

请帮助我我哪里出错了。

4

1 回答 1

2

您可以通过更新“$HIVE_HOME/conf/hive-default.xml”文件的“javax.jdo.option.ConnectionURL”来更改这一点并使用一个 metastore_db,如下所示:

    <property>
       <name>javax.jdo.option.ConnectionURL</name>
       <value>jdbc:derby:;databaseName=/path/to/my/metastore_db;create=true</value>
       <description>JDBC connect string for a JDBC metastore</description>
    </property>

/path/to/my/metastore_db您要保留元存储 dB 的位置在哪里。

于 2013-04-21T17:22:27.753 回答