1. 程式人生 > >Solr數據庫導入

Solr數據庫導入

pos order lean b- update drive elong fontsize 版本

Solr數據庫導入

1、在MySQL中創建一張表t_solr,並插入測試數據。

技術分享圖片

技術分享圖片

2、把E:\Solr\solr-4.10.4\example\example-DIH\solr\db\conf下的admin-extra.html, admin-extra.menu-bottom.html,admin-extra.menu-top.html三個文件也復制到conf中去。

打開E:\Solr\solrHome\mycore\conf路徑下的

solrconfig.xml文件,添加如下節點:

<requestHandlername="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">

<lstname="defaults">

<strname="config">data-config.xml</str>

</lst>

</requestHandler>

3、新建一個data-config.xml文件,與solrconfig.xml同一個目錄下。內容為:

<dataConfig>

<dataSource type="JdbcDataSource"

driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost/test"

user="root"

password="giser" />

<document>

<entity name="t_solr" transformer="DateFormatTransformer"

query="SELECT id, subject, content, last_update_time FROM t_solr WHERE id >= ${dataimporter.request.id}">

<field column=‘last_update_time‘ dateTimeFormat=‘yyyy-MM-dd HH:mm:ss‘ />

</entity>

</document>

</dataConfig>

說明:這裏使用了一個${dataimporter.request.id},這個是參數,後面在做數據導入時,會使用到,以此條件為基準讀數據。

4、復制解壓出的solr jar包(E:\Solr\solr-4.10.4\dist)solr-dataimporthandler-4.10.0.jar和solr-dataimporthandler-extras-4.10.0.jar到tomcat solr webapp的WEB-INF\lib目錄下(E:\Solr\apache-tomcat-7.0.65\webapps\solr\WEB-INF\lib)。

當然,也包括mysql的jdbc jar包:mysql-connector-java-5.1.7-bin.jar

(還有一種方法是在solrconfig.xml中加入lib節點,然後把jar包放到solrhome下,這樣可以不在WEB-INF\lib中加入jar包)

5、用記事本打開E:\Solr\solrHome\mycore\conf路徑下的schema.xml,在solrhome文件夾中添加內容如下:

<!—type對應 -->

<fieldtype name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>

<fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>

<field name="subject" type="string" indexed="true" stored="true" />

<field name="content" type="string" indexed="true" stored="true" />

<defaultSearchField>subject</defaultSearchField>

6、打開Solr,查詢數據

通過地址直接訪問:http://localhost:8080/solr/mycore/dataimport?command=full-import&clean=true&commit=true&wt=json&indent=true&entity=t_solr&verbose=false&optimize=false&debug=false&id=1

結果如圖所示:

技術分享圖片配置好後,之後我們只需要使用這個url地址,就可以不斷的去導入數據做索引了。

通過DataImport生成索引:

技術分享圖片查詢結果:

技術分享圖片

  總結:

遇到的問題1:

mysql java.sql.SQLException: Unknown system variable ‘language&#03

一:問題描述:mysql測試連接一致報錯:Unknown system variable ‘language‘ 未知名的系統變量語言

二:用的Mysql的版本 5.6 用的連接 jar mysql-connector-java-5.1.36.jar

三:找到問題,mysql-connector-java-5.1.36.jar版本太高了,換成

mysql-connector-java-5.1.24.jar 問題解決!

遇到的問題2:

技術分享圖片  把solr-6.0\solr-6.0.0\example\example-DIH\solr\db\conf下的admin-extra.html, admin-extra.menu-bottom.html,admin-extra.menu-top.html三個文件也復制到conf中去。

Solr數據庫導入