1

1 台のマシンに 2 つのバージョンのハイブがあります。その意図は、mysql の単一のインスタンスによって両方をサポートすることです。そのためには、メタストアとは異なるデータベース名を使用する必要があります

2 番目のハイブ インスタンスの hive -conf.xml に以下が追加されました。データベース名がmetastore14であり、createDatabaseIfNotExistが true に設定されていることに注意してください。

<configuration>
<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost/metastore14?createDatabaseIfNotExist=true</value>
  <description>the URL of the MySQL database</description>
</property>

さらに、対応する datanucleus 固有のプロパティを設定します。

<property>
  <name>datanucleus.autoCreateSchema</name>
  <value>true</value>
</property>

また、HIVE_CONF_DIR が正しく設定されています。

17:08:28/libexec $echo $HIVE_CONF_DIR
/usr/local/Cellar/hive/0.14.0/libexec/conf

ただし、Hive クライアントから hive14 に接続すると、次のエラーが発生します。

Logging initialized using configuration in jar:file:/usr/local/Cellar/hive/0.14.0/libexec/lib/hive-common-0.14.0.jar!/hive-log4j.properties

-- run create table statement and get following error:

Caused by: org.datanucleus.store.rdbms.exceptions.MissingTableException: 
Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus
requires this table to perform its persistence operations. Either your 
MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"

どのような追加の手順が必要ですか?

4

0 に答える 0