[英]How to import data from mysql to solr
我正在嘗試使用以下URL進行完整的數據庫導入
`127.0.0.1:8983/solr/dataimport?command=full-import`
我安裝了solr並嘗試對其進行配置。 我更改了一些文件,並添加了詳細信息(文件名和添加的代碼在下面描述)。 但是,當我嘗試將表數據導入solr json格式時,它顯示以下錯誤:
HTTP ERROR 404
Problem accessing /solr/dataimport. Reason:
Not Found
Powered by Jetty://
誰能告訴我實際的問題是什么? 還是我沒有正確配置Sorl?
我的data-config.xml文件具有以下代碼:
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/sq_dbLoveOffers"
user="pksqueak"
password="passwd"/>
<document>
<entity name="id"
query="select sq_prom_id, sq_prom_name, sq_prom_description, sq_latitude, sq_longitude from sq_offers">
</entity>
</document>
</dataConfig>
我在Solrconfig.xml中添加了以下代碼:
<lib dir="../../../../contrib/dataimporthandler/lib/" regex=".*\.jar" />
<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />
和
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
我在schema.xmal FILE中添加了以下代碼:
<fields>
<field name="sq_prom_id" type="string" indexed="true" stored="true" required="true" />
<field name="sq_prom_name" type="string" indexed="true" stored="true" />
<field name="sq_prom_description" type="string" indexed="true" stored="true" />
<field name="sq_latitude" type="string" indexed="true" stored="true" />
<field name="sq_longitude" type="string" indexed="true" stored="true" />
</fields>
如果您處理的核心不是您的默認核心,則您的請求在URL中缺少核心的名稱。 您應該要求應該像這樣
127.0.0.1:8983/solr/<core-name>/dataimport?command=full-import
在那里,您需要用solr.xml中配置的內核的實際名稱替換<core-name>
。
我使用以下命令為DIH運行sorl服務器。
java -Dsolr.solr.home =“ ./ example-DIH / solr /” -jar start.jar
並且我使用下面的URL進行了完全導入,這解決了我的問題。
http://127.0.0.1:8983/solr/db/dataimport?command=full-import
我有一個運行正常的數據導入處理程序,如有必要,您可以與我比較配置http://amac4.blogspot.co.uk/2013/08/configuring-solr-4-data-import-handler.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.