使用 derby 配置 Hive Metastore
Hive metastore Configuration with derby
在 RedHat 测试服务器中,我安装了 hadoop 2.7 和 运行 Hive,Pig & Spark 没有问题。但是当试图从 Spark 访问 Hive 的 Metastore 时,我得到了错误所以我想把 hive-site.xml(提取 'apache-hive-1.2.1-bin.tar.gz' 文件后,我只是按照教程将 $HIVE_HOME 添加到 bashrc,除了与 Spark 的集成之外,一切正常)在 apache 站点中,我发现我需要将 hive- site.xml 作为 Metastore 配置
我创建的文件如下
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby://localhost:1527/metastore_db;create=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
</configuration>
我把 IP 作为 localhost 因为它是单节点机器。之后我什至无法连接到 Hive。它抛出错误
线程 "main" 中的异常 java.lang.RuntimeException: java.lang.RuntimeException: 无法实例化 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
在 org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522)
.....
原因:javax.jdo.JDOFatalDataStoreException:无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby://localhost:1527/metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------
java.sql.SQLException: 找不到适合 jdbc:derby://localhost:1527/metastore_db;create=true
的驱动程序
有很多错误日志指向同一件事。如果我从 conf 文件夹中删除 hive-site.xml,则配置单元可以正常工作。任何人都可以指出默认 Metastore 配置的正确路径
谢谢
阿诺普 R
Derby 用作嵌入式数据库。尝试使用
jdbc:derby:metastore_db;create=true
为jdbc-url。另见
要使用 Metastore 的全部功能(并由此能够从不同的服务访问它),请尝试按照上述文档中的说明使用 mysql 进行设置。
在设置嵌入式 Metastore 数据库时,使用下面的 属性 作为 JDBC URL:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby:metastore_db;create=true </value>
<description>JDBC connect string for a JDBC metastore </description>
</property>
我在安装 hive 时也遇到了类似的异常。对我有用的是初始化 derby 数据库。我使用以下命令来解决问题:命令 -> 转到 $HIVE_HOME/bin 和 运行 命令 schematool -initSchema -dbType derby
。
您可以关注linkhttp://www.edureka.co/blog/apache-hive-installation-on-ubuntu
将derbyclient.jar放入hive
的lib文件夹即可
在 RedHat 测试服务器中,我安装了 hadoop 2.7 和 运行 Hive,Pig & Spark 没有问题。但是当试图从 Spark 访问 Hive 的 Metastore 时,我得到了错误所以我想把 hive-site.xml(提取 'apache-hive-1.2.1-bin.tar.gz' 文件后,我只是按照教程将 $HIVE_HOME 添加到 bashrc,除了与 Spark 的集成之外,一切正常)在 apache 站点中,我发现我需要将 hive- site.xml 作为 Metastore 配置 我创建的文件如下
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby://localhost:1527/metastore_db;create=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
</configuration>
我把 IP 作为 localhost 因为它是单节点机器。之后我什至无法连接到 Hive。它抛出错误
线程 "main" 中的异常 java.lang.RuntimeException: java.lang.RuntimeException: 无法实例化 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 在 org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522)
..... 原因:javax.jdo.JDOFatalDataStoreException:无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby://localhost:1527/metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------ java.sql.SQLException: 找不到适合 jdbc:derby://localhost:1527/metastore_db;create=true
的驱动程序有很多错误日志指向同一件事。如果我从 conf 文件夹中删除 hive-site.xml,则配置单元可以正常工作。任何人都可以指出默认 Metastore 配置的正确路径 谢谢 阿诺普 R
Derby 用作嵌入式数据库。尝试使用
jdbc:derby:metastore_db;create=true
为jdbc-url。另见
要使用 Metastore 的全部功能(并由此能够从不同的服务访问它),请尝试按照上述文档中的说明使用 mysql 进行设置。
在设置嵌入式 Metastore 数据库时,使用下面的 属性 作为 JDBC URL:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby:metastore_db;create=true </value>
<description>JDBC connect string for a JDBC metastore </description>
</property>
我在安装 hive 时也遇到了类似的异常。对我有用的是初始化 derby 数据库。我使用以下命令来解决问题:命令 -> 转到 $HIVE_HOME/bin 和 运行 命令 schematool -initSchema -dbType derby
。
您可以关注linkhttp://www.edureka.co/blog/apache-hive-installation-on-ubuntu
将derbyclient.jar放入hive
的lib文件夹即可