solr6.6.0+tomcat-8.5 solr從mysql數據庫導入數據並創建索引

1)創建一張表student

 

創建時注意標紅的位置,在data-config.xml文件中會用到

2)在表中添加數據(本人添加了十條)如圖:

 

3)複製solr導入需求的jar,如圖:

 

上面的根據個人情況而定,我的文件目錄爲從D:\My software download\solr-6.6.0\solr-6.6.0\dist下複製solr-dataimporthandler-6.6.0.jar到D:\My software\Tomcat8.0\webapps\solr\WEB-INF\lib文件夾下

4)複製一個mysql驅動jar,到D:\My software\Tomcat8.0\webapps\solr\WEB-INF\lib 下

5)在D:\My software\solr_home\test1\conf目錄下創建文件data-config.xml

6)接下來就是配置,solr_home下的三個配置文件了 data_config.xml    schema.xml(就是managed-schema文件)  solrconfig.xml

A:配置data_config.xml文件(現在還是空文件夾)複製一下代碼到該文件:

<?xml version="1.0" encoding="UTF-8" ?> 
<dataConfig>  
<dataSource name="solr_test" type="JdbcDataSource"  
          driver="com.mysql.jdbc.Driver"  
          url="jdbc:mysql://localhost:3306/solr"  
          user="root"  
          password="123456"/>  
<document>  
    <entity dataSource="solr_test"  name="student" query="SELECT id,name,sex,old FROM student">
         <field column="id" name="id"/>
         <field column="name" name="userName"/>
         <field column="sex" name="sex"/>
         <field column="old" name="old"/>
    </entity>  
</document>  

</dataConfig>

---解釋上面配置如下---

<?xml version="1.0" encoding="UTF-8" ?> 
<dataConfig>  
<dataSource name="我寫的鏈接名(可以隨意寫)" type="JdbcDataSource"  
          driver="com.mysql.jdbc.Driver"  
          url="jdbc:mysql://localhost:數據庫端口號/數據源名"  
          user="用戶名"  
          password="密碼"/>  
<document>  
    <entity dataSource="我寫的鏈接名(可以隨意寫)"  name="表名" query="查詢語句">
         <field column="數據庫字段名稱" name="別名,用作查詢顯示(但是要與solrconfig.xml配置文件中配置的name對應)"/>
         <field column="name" name="userName"/>
         <field column="sex" name="sex"/>
         <field column="old" name="old"/>
    </entity>  
</document>  

</dataConfig>

 B:schema.xml 配置文件


紅框內的內容爲自己寫的

該配置文件中原有這個id,不需要在增加否則會報id重複的錯誤的信息

name="userName"這個name是別名跟數據庫的列名可以不一樣只是用來查詢用,但要跟data-config.xml文件中的一樣

C:solrconfig.xml配置如下圖

 

內容:

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">  
      <lst name="defaults">  
            <str name="config">data-config.xml</str>  
      </lst>  
< /requestHandler>  

7)啓動tomcat,看到如下的solr界面,說明各個文件已經配置成功了


entity爲實體的表名稱(本次的表爲student)

上面路徑的端口號爲8888是因爲我把Tomcat的端口號修改爲了8888若沒有修改的仍是8080

{導入數據後,再次啓動時只需啓動Tomcat,然後訪問http://localhost:8888/solr/index.html#/
(8888是Tomcat的端口號:默認時爲8080)}

8)點擊Execute,查看日誌,Logging

 

如果日誌爆出以上的錯誤,則表示缺少三個文件,如果沒有報錯忽略第(9)

9)將1處的三個文件複製到2處的目錄下


清除索引目錄(下面圖片的目錄下的文件),重新啓動Tomcat

 

10)如果出現如下界面,說明索引已經創建成功了


Num Docs的數目爲10表明已經core下成功創建了10個文件(因爲有10條記錄)
11)自己嘗試query


1處格式爲別名:名字,然後點擊Excute Query,2處爲查詢結果

 

備註:該文章引用了以下兩篇文章:

一:Solr6.6安裝教程:http://blog.csdn.net/tofate_/article/details/77826497

二:solr5.3+tomcat-7.0.65 solr從mysql數據庫導入數據並創建索引:http://blog.csdn.net/yanlove_jing/article/details/50408537






 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章