在RedHat测试服务器中,我安装了hadoop 2.7,然后我运行了Hive,Pig& Spark没有问题。但是当我试图从Spark访问Hive的Metore时我得到了错误所以我想把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,hive工作没有问题。任何人都可以指出我的默认Metastore配置的正确路径 谢谢 Anoop R
答案 0 :(得分:1)
在设置嵌入式Metastore数据库时,请使用以下属性作为JDBC URL:
{{1}}
答案 1 :(得分:0)
安装配置单元时,我也遇到了类似的异常。对我有用的是初始化德比数据库。我使用以下命令来解决问题:command - &gt;转到$ HIVE_HOME / bin并运行命令schematool -initSchema -dbType derby
。
您可以点击http://www.edureka.co/blog/apache-hive-installation-on-ubuntu
答案 2 :(得分:0)
如果将derbyclient.jar放在hive的lib文件夹中,它将起作用
答案 3 :(得分:-1)
Derby用作嵌入式数据库。尝试使用
jdbc:derby:metastore_db;create=true
作为jdbc-url。另见
要使用完全功能的Metastore(以及能够从不同服务访问它),请尝试使用mysql进行设置,如上文所述。