如何找到使用 derby 或 MYSQL 作为数据库的配置单元 Metastore?

how to find hive metastore is using derby or MYSQL as database?

我正在尝试查找正在使用 DerbyMYSQL 作为数据库的配置单元远程元存储?

有办法找到这个吗?

检查你的hive-site.xml

如果有以下几行:

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://<host name>/<database name>..</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>

你的 meta-storemysql.

<property>
  <name>javax.jdo.option.ConnectionURL</name> 
  <value>jdbc:derby:;databaseName=../build/test/junit_metastore_db;create=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>

你的 meta-storederby.

More about configure meta-store


编辑

如果以上行不在 hive-site.xml 中,请尝试在 hive-default.xml.templatehivemetastore-site.xml 中搜索。

关于 conf 文件的更多信息:

  1. hive-default.xml.template 包含预打包在 Hive 发行版中的各种配置变量的默认值。

  2. 为了覆盖任何值,创建 hive-site.xml 并在该文件中设置值,如上所示。

  3. 您可以在 hivemetastore-site.xml 中设置 Metastore 特定的配置值。

BTW: Derby 是 Hive metastore(元数据存储)的 default database

If you want to read more, the official docs

在 Hive 中更新以下 属性 并部署相同的内容,然后继续安装。 转到 Hive->Configuration 并在下面更新 属性: Hive Metastore 数据库主机= 其中 FQDN 是名称节点所在的主机。

示例: Hive Metastore 数据库主机=cloudera1.xyz.com

我知道我来晚了,但是,我想出了一个更简单方便的解决方案来获取元存储的详细信息。

打开 Hive Cli 并输入以下命令

hive> set javax.jdo.option.ConnectionURL;

它应该显示在 hive-site.xml 中定义的 hive metastore URL,它应该看起来像这样

javax.jdo.option.ConnectionURL=jdbc:mysql://<hostName>:<port>/<database>?createDatabaseIfNotExist=true

希望对您有所帮助