怎么使用Solr索引MySql數(shù)據(jù)庫(kù)?
發(fā)表時(shí)間:2023-07-24 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]前面的文章介紹了在tomcat部署solr4.10、solr4.10集成IK analyzer分詞器,現(xiàn)在介紹如何通過配置solr實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)的索引,從而實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫(kù)的查詢。...
前面的文章介紹了在tomcat部署solr4.10、solr4.10集成IK analyzer分詞器,現(xiàn)在介紹如何通過配置solr實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)的索引,從而實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫(kù)的查詢。首先要下載連接MySQL需要的jar包,我下載的是:mysql-connector-java-5.1.26-bin.jar。
1.假設(shè)MySQL數(shù)據(jù)庫(kù)有關(guān)數(shù)據(jù)庫(kù)、表、字段定義等工作已經(jīng)提前完成。這里介紹我這個(gè)測(cè)試用例所用的數(shù)據(jù)庫(kù)情況:數(shù)據(jù)庫(kù)和表名均為crawler,用戶名root,密碼admin。這里就不把sql語(yǔ)句列出來(lái)了,反正是測(cè)試。另外,因?yàn)镾olr的解壓路徑以及Solr_HOME的路徑每個(gè)人都是不一樣的,所以以后關(guān)于Solr_HOME的路徑,我都用$SOLR_HOME表示。
2.使用DataImportHandler導(dǎo)入并索引數(shù)據(jù)
配置$SOLR_HOME\collection1\conf\solrconfig.xml
在<requestHandler name="/select" class="solr.SearchHandler">前面上加上一個(gè)dataimport的處理的Handler,如圖示:
其中,data-config.xml文件用于定義solr和MySQL的映射關(guān)系,這里使用的而是相對(duì)路徑,即跟solrconfig.xml處于同一目錄。因此要在$SOLR_HOME\collection1\conf目錄下創(chuàng)建data-config.xml文件
3.通過data-config.xml完成Solr與MySQL數(shù)據(jù)庫(kù)的映射,data-config.xml文件內(nèi)容如圖所示:
4.修改schema.xml文件,因?yàn)檫@個(gè)文件是我們從壓縮包中復(fù)制過來(lái)的,里面包括很多多余的數(shù)據(jù),在這里我們只需要在該文件中定義與MySQL數(shù)據(jù)庫(kù)表中相關(guān)的Field,去掉不相關(guān)的Field即可,但需要注意,有些Field還是需要保留的,如:_version_和text 這兩個(gè)field要保留,其他的Field、CopyField刪除即可:如圖示。
上圖中,我id的定義為int型,Solr中索引的主鍵默認(rèn)是只支持type="string"字符串類型的。解決方法:修改同目錄下的elevate.xml,注釋掉下面2行。
5.將mysql-connector-java-5.1.26-bin.jar和solr-4.10.3\dist\solr-dataimporthandler-4.10.3.jar復(fù)制到 D:\Solr\solr-4.10.3\example\solr-webapp\webapp\WEB-INF\lib中。
6.開啟tomcat進(jìn)入Solr的Admin UI界面,在Core Selector中選擇collection1,選擇dataImport子菜單,如圖所示。
完成設(shè)置后,點(diǎn)擊Execute執(zhí)行。
7.查詢測(cè)試在core selector下方的子菜單中選擇Query,在q框中輸入content:習(xí)近平,點(diǎn)擊下方俺就,就會(huì)得到查詢結(jié)果
以上就是如何使用Solr索引MySql數(shù)據(jù)庫(kù)?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。