solr簡單搭建與使用

安裝步驟:java

java環境, jdk1.8mysql

從官網下載最新的solr7.5git

wget http://mirrors.hust.edu.cn/apache/lucene/solr/7.5.0/solr-7.5.0.tgzgithub

解壓 :tar -zxvf solr-7.5.0.tgz -C /usr/local/web

添加環境變量:vim /etc/profilesql

#solr7.5數據庫

export PATH=$PATH:/usr/local/solr-7.5.0/bin/apache

啓動失敗緣由:vim

這是由於使用的是root用戶因此提示咱們要加一個強制啓動的參數,那麼咱們接受它的建議從新啓動,輸入命令./solr start -force ,當看到下面的輸出的時候就說明咱們啓動成功了,這裏咱們使用的是它默認的端口,咱們也能夠加上-p參數來使用其它的端口瀏覽器

啓動:solr start -force -p 8982

Solr相關命令:

solr 啓動、中止、重啓命令

solr start -p 端口號 -force

solr stop -all

solr restart -p 端口號 -force

三:使用命令添加/刪除 core

Create

solr create -c name -force

delete

solr delete -c name

示例:建立名爲 mote 的core,並訪問這個core

訪問:瀏覽器輸入咱們的ip+端口號就能夠訪問了

IK分詞器

下載:ik-analyzer-solr7-7.x.jar

https://search.maven.org/search?q=com.github.magese

上傳到 /usr/local/solr-7.5.0/server/solr-webapp/webapp/WEB-INF/lib/ 目錄下

vim /usr/local/solr-7.5.0/server/solr/mote/conf/managed-schema

添加:

<!-- 定義ik分詞器 -->

<fieldType name="text_ik" class="solr.TextField">

  <analyzer type="index">

      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false"/>

      <filter class="solr.LowerCaseFilterFactory"/>

  </analyzer>

  <analyzer type="query">

      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true"/>

      <filter class="solr.LowerCaseFilterFactory"/>

  </analyzer>

</fieldType>

重啓Solr   solr restart  -force

添加自定義字段:

例:

<fieldType name="text_ik" class="solr.TextField">

         <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>

     </fieldType>

     <field name="title_ik" type="text_ik" indexed="true" stored="true"/>

     <field name="website_id_ik" type="plong" indexed="true" stored="true" multiValued="false" />

     <fieldType name="int" class="solr.TrieIntField" positionIncrementGap="0" docValues="true" precisionStep="0"/>

     <field name="content_type_ik" type="int" indexed="true" stored="true" multiValued="false" />

     <field name="content_id_ik" type="plong" indexed="true" stored="true" multiValued="false" />

定義 ik分詞器的 拓展/停用 詞典

在 solr-7.5.0\server\solr-webapp\webapp\WEB-INF 新建classes目錄

在classes新建三個文件

ext.dic         #用於擴展,添加詞語

stopword.dic        #用於停用,添加詞語

IKAnalyzer.cfg.xml     #用於定義擴展和停用

vim IKAnalyzer.cfg.xml

添加:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> 

<properties> 

     <comment>IK Analyzer 擴展配置</comment>

     <!--用戶能夠在這裏配置本身的擴展字典-->

     <entry key="ext_dict">ext.dic;</entry>

     <!--用戶能夠在這裏配置本身的擴展中止詞字典-->

     <entry key="ext_stopwords">stopword.dic;</entry>

</properties>

solr restart  -force

測試分詞

 

mysql數據庫導入solr

下載 mysql 驅動包:mysql-connector-java-x.x.x.jar,絕大部分jar包在maven倉庫都能找到

將 mysql 驅動包導入 solr :將下載下來的 mysql-connector-java-x.x.x.jar 拷貝到 solr\server\solr-webapp\webapp\WEB-INF\lib 下;

將solr{home}\dist目錄下的:solr-dataimporthandler-7.4.0.jar和solr-dataimporthandler-extras-7.5.0.jar這兩個jar包拷貝到 solr\server\solr-webapp\webapp\WEB-INF\lib下

vim /usr/local/solr-7.5.0/server/solr/mote/conf/solrconfig.xml

添加:

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

    <lst name="defaults">

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

    </lst>

</requestHandler>

# solrconfig.xml配置文件主要定義了solr的一些處理規則,包括索引數據的存放位置,更新,刪除,查詢的一些規則配置。至關因而基礎配置文件。

在solr的conf目錄下建立data-config.xml文件,由solrconfig.xml定義

vim /usr/local/solr-7.5.0/server/solr/mote/conf/data-config.xml

添加:

<?xml version="1.0" encoding="UTF-8" ?>

<dataConfig>

<dataSource type="JdbcDataSource"

driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://192.168.231.200:3306/huang"

#指定數據庫庫名

user="huang"

password="123123"/>

#指定數據庫帳號密碼

<document>

<entity name="user1" query="SELECT * from user1">

#指定數據庫表名,sql語句

<field column="id" name="id"/>

<field column="name" name="name"/>

#指定數據庫字段,須要managed-schema配置文件中肯定

</entity>

</document>

</dataConfig>

vim /usr/local/solr-7.5.0/server/solr/mote/conf/managed-schema

添加:

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

注:managed-schema文件自己已經有id字段的規則不須要添加managed_schema是在使用solr創建core時的配置(core鏈接配置和索引庫),solr根據它肯定如何對文檔創建索引到索引庫中,每一個core在創建前都須要設計好managed_schema

重啓solr

登入web界面測試

相關文章
相關標籤/搜索