2015-11-22 61 views
14

我得到這個錯誤,當我嘗試創建Solr中新的核心。如何修復:錯誤CREATEing SolrCore「gettingstarted」:無法創建核心

[email protected]:/opt/solr# bin/solr create -c gettingstarted -n data_driven_schema_configs 

Setup new core instance directory: 
/var/solr/data/gettingstarted 

Creating new core 'gettingstarted' using command: 
http://localhost:8983/solr/admin/cores?action=CREATE&name=gettingstarted&instanceDir=gettingstarted 

Failed to create core 'gettingstarted' due to: Error CREATEing SolrCore 'gettingstarted': Unable to create core [gettingstarted] Caused by: /var/solr/data/gettingstarted/data 

另外,如果我嘗試創建或者,它給了我同樣的錯誤:

[email protected]:/opt/solr# bin/solr create -c mycore 

Setup new core instance directory: 
/var/solr/data/mycore 

Creating new core 'mycore' using command: 
http://localhost:8983/solr/admin/cores?action=CREATE&name=mycore&instanceDir=mycore 

Failed to create core 'mycore' due to: Error CREATEing SolrCore 'mycore': Unable to create core [mycore] Caused by: /var/solr/data/mycore/data 

在瀏覽器中,當我試圖訪問Solr管理面板,它會顯示一個通知,如:

SolrCore Initialization Failures 

opt/solr/example/exampledocs/*.xml: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: /var/solr/data/opt/solr/example/exampledocs/*.xml/data 

快照附着。

enter image description here

+1

你找到解決辦法嗎? 我有完全相同的情況,沒有任何答案正在工作 –

回答

0

可以解決以下步驟的問題:用正確的文件的目錄是否

  1. 檢查存在:

    • 的/ opt/Solr的/服務器/ gettingstarted/conf目錄/ solrconfig.xml中
    • 的/ opt/Solr的/服務器/ GETT ingstarted/conf目錄/ schema.xml中
    • 的/ opt/Solr的/服務器/ gettingstarted /使用數據
  2. 然後打開 核心管理員, 「添加新的核心」,輸入正確的目錄/文件 名稱並將該核心添加到系統中。實際上它會給你一個錯誤信息,表明核心已經存在。刷新網頁管理員在 的瀏覽器,它現在會自動加載這個核心沒有任何 錯誤消息。

1

在我看來像一個可能的用戶權限問題。您似乎以root身份運行這些命令,但部分工作由Solr服務器完成。服務器進程是否可以與無法訪問錯誤消息中提及的目錄的用戶一起運行?

37

因爲它可能會幫助任何人有同樣的問題,它確實是由permission issues使用root時造成的。以root身份執行該命令時腳本不會很快終止,而是在失敗之前創建一個核心定義的一部分。

所以首先清理破碎的核心:

bin/solr delete -c mycore 

確保沒有文件夾(S)/var/solr/data下徘徊的mycore核心。

接下來,創建核心爲solr用戶

su -u solr -c "/opt/solr/bin/solr create_core -c mycore" 

這次應該能成功

+1

我發現你也可以在'/ var/solr/data/mycore'文件夾上做一個'chown -R solr'來解決這個問題 – sagesolutions

+4

根據你的安裝solr腳本的路徑可能會有所不同。對我來說,這是有效的:'sudo -u solr /opt/solr-5.3.0/bin/solr create -c [core]'。 –

+0

我該如何做這個清理?我收到這個錯誤 – Suraj

6

不要運行solr腳本root用戶(這是not recommended)。您應該solr用戶,例如:運行

sudo -u solr ./bin/solr create -c mycore