2016-02-05 101 views
1

在RedHat測試服務器上,我安裝了hadoop 2.7,我跑了Hive,Pig & Spark沒有問題。但是當試圖從Spark訪問Hive的Metastore時,我得到了錯誤所以我想到了放置hive站點。 xml(在解壓'apache-hive-1.2.1-bin.tar.gz'文件後,我只是將$ HIVE_HOME添加到bashrc中,並且除了與Spark的這個集成之外,其他所有工作都是正常的)在apache站點中,我發現我需要把蜂巢-site.xml中作爲metastore配置 我所創建的文件,如下Hive metastore配置derby

<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作爲本地主機,因爲它是單一節點機。之後噸帽子我甚至無法連接到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文件夾蜂巢蜂房site.xml的工作沒有問題。可有人點我 感謝 Anoop [R

+0

您可以嘗試將echo $ CLASSPATH命令放在配置單元腳本中。但我已經嘗試了每個建議stackoverflow等,並得到相同的錯誤。我要放棄並嘗試Spark或Hbase或其他東西。這裏是.bashrc:'export HIVE_HOME =/usr/local/hive/apache-hive-2.1.1-bin export PATH = $ HIVE_HOME/bin:$ PATH export DERBY_INSTALL =/usr/local/derby/db-德比10.13.1.1斌 出口DERBY_HOME = $ DERBY_INSTALL 出口PATH = $ PATH:$ DERBY_HOME/bin中 出口HIVE_CONF_DIR = $ HIVE_HOME/conf目錄 出口CLASSPATH = $ CLASSPATH:$ DERBY_HOME/lib目錄/德比。jar:$ DERBY_HOME/lib/derbytools.jar' –

回答

-1

德比作爲嵌入式數據庫默認metastore配置正確的道路。嘗試使用

jdbc:derby:metastore_db;create=true 

as jdbc-url。又見

https://cwiki.apache.org/confluence/display/Hive/AdminManual+MetastoreAdmin#AdminManualMetastoreAdmin-EmbeddedMetastore

要使用metastore全功能(以及由以能夠從不同的服務訪問它),嘗試建立與上述文件中所描述用mysql。

+1

您可以在服務器模式下使用Derby。請參閱[HiveDerbyServerMode](https://cwiki.apache.org/confluence/display/Hive/HiveDerbyServerMode)。 – zero323

+0

我改變了hive-ste.xml添加到conf文件夾中。但現在我在線程「main」中得到了一個不同的錯誤異常java.lang.RuntimeException:java.net.ConnectException:從MTD-BORHTC01.inetservices 127.0.1.1到localhost:9000連接失敗例外:java.net.ConnectException:連接被拒絕;欲瞭解更多詳細信息,請參閱:http://wiki.apache.org/hadoop/ConnectionRefused 是否有任何事情從我的結尾刪除或做錯了謝謝 –

+0

問題解決了配置單元后,我用stop-all.sh重新啓動hadoop然後start-all.sh之後有一個安全模式的問題,這也解決了使用hadoop dfsadmin -safemode leave命令。我將文件複製到火花conf文件夾中.Still Spark shell引發警告「16/02/05 07:52:11 WARN ObjectStore:在Metastore中找不到版本信息。未啓用hive.metastore.schema.verification,因此記錄模式版本1.2.0 16/02/05 07:52:11 WARN ObjectStore:無法獲取數據庫默認值,返回NoSuchObjectException 「Spark配置有什麼問題 –

0

當你正在建立一個嵌入式數據庫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> 
0

我也面臨着類似的類型的異常,而安裝蜂箱。爲我工作的東西是初始化德比分貝。我使用以下命令來解決問題:命令 - >轉至$ HIVE_HOME/bin並運行命令schematool -initSchema -dbType derby。 您可以按照鏈接http://www.edureka.co/blog/apache-hive-installation-on-ubuntu

相關問題