Solr之搭建Solr6.0服务并从Mysql上导入数据
https://blog.csdn.net/linzhiqiang0316/article/details/51464461
目前百度上面關于solr對MYSQL的集成一般都是4.0左右。但是前solr的版本已經到了6.0,很多配置都和一起不一樣了。所以我今天就和大家聊聊solr6.0如何進行MYSQL數據庫的配置。(配置的前提是已經搭建好solr服務器了,如果有什么不清楚的可以參考這篇博客:點擊打開鏈接)。
步驟1:
? 在webapps中solrhome下新建一個文件夾名字叫做mynode(名字不固定,可以隨便取,但是這個名字在后面的配置中會有所關聯。)然后在mynode文件下新建一個名字叫做conf的文件夾(這個文件名字最后不要改。)然后把官網下下來的solr項目中solr-6.0.0\server\solr\configsets\data_driven_schema_configs\conf下的所有東西復制到conf中去。(注意不要復制錯!)最后把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中去。
步驟2:
? 把mysql所需的jar包和solr-6.0\solr-6.0.0\dist下的solr-dataimporthandler-6.0.0.jar和solr-dataimporthandler-extras-6.0.0.jar都復制到項目WEB-INF\lib下。然后在solrconfig.xml文件中加入<lib dir="D:/編程工具/tomcat/apache-tomcat-8.0.32-windows-x64/apache-tomcat-8.0.32/webapps/solr/WEB-INF/lib/" regex=".*\.jar" />(就是把WEB-INF\lib里面的jar包配置到項目中,我這里用的是絕對地址。這段代碼大約在solrconfig.xml的70多行處,前面有一堆類似的代碼。)
步驟3:
? 在MYSQL中新建一張表。我這里用的是Navicat管理工具進行創建的。這里的表名是goods。字段如下圖所示:
步驟4:
? 在solrconfig.xml的? <requestHandler name="/select" class="solr.SearchHandler">之上添加
然后在conf下新建data-config.xml文件。里面內容如下:
?
說明:
? dataSource是數據庫數據源。Entity就是一張表對應的實體,pk是主鍵,query是查詢語句。Field對應一個字段,column是數據庫里的column名,后面的name屬性對應著Solr的Filed的名字。其中solrdata是數據庫名,goods是表名。
? 其中deltaQuery是增量索引,原理是從數據庫中根據deltaQuery指定的SQL語句查詢出所有需要增量導入的數據的ID號。然后根據deltaImportQuery指定的SQL語句返回所有這些ID的數據,即為這次增量導入所要處理的數據。核心思想是:通過內置變量“${dih.delta.id}”和 “${dataimporter.last_index_time}”來記錄本次要索引的id和最近一次索引的時間。
? 最后在conf文件下的managed-schema配置field信息:
?
其中id,name,number,updateTime是上面提到的數據庫字段。下面三個field是系統本身的不能刪除,否則會運行錯誤。
步驟5:
啟動tomcat,并在URL中輸入http://127.0.0.1:8080/solr/index.html路徑。選擇Core admin 輸入如下設置:
設置好之后,點擊Add Core按鈕,進行設置,設置成功后,再core Selector選擇剛剛添加的core。
? 選擇剛剛添加的goods實體進行索引操作:我們這兒可以選擇full-import或者delta-import(增量索引),選擇增量索引需要把clean的勾給去掉,不然會清除之前的,增量的索引的初衷是對新增或者修改的記錄重新索引,會追加到原有的索引文件當中。當我們選擇full-import的時候,最好就是把原有的索引文件給清空重新索引。
索引成功如下如所示:
使用query進行測試,輸入sa查出了sa
數據庫中的數據如下圖所示:
這就成功的配置完了MYSQL數據庫了,如果配置過程有啥問題可以參考我這個已經配置成功代碼:點擊打開鏈接
轉載于:https://www.cnblogs.com/davidwang456/articles/9497685.html
總結
以上是生活随笔為你收集整理的Solr之搭建Solr6.0服务并从Mysql上导入数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL慢查询日志总结
- 下一篇: 基于SQL on Hadoop的数据仓库