solr的在mac上的安装配置以及同步mysql数据

Posted zfszhangyuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了solr的在mac上的安装配置以及同步mysql数据相关的知识,希望对你有一定的参考价值。

首先下载solr:本文用的是5.5.3版本

http://apache.fayea.com/lucene/solr/5.5.3/solr-5.5.3.tgz

下载完解压solr-5.5.3.tgz拷贝到你的安装目录 我是放到/Users/mac/Library/下 重命名为solr

 mv solr-5.5.3.tgz /Users/mac/Library/solr

进入bin目录 cd /Users/mac/Library/solr/bin

bin ./solr start -p 8000 (默认端口号为8983,可以使用-p 指定端口号)


启动成功!

 http://localhost:8983/

$ bin/solr status  检查Solr的运行状态

下面开始新建一个core(相当于一个索引库对应一个schema,如果你是从mysql中拿数据相当于mysql中的一张大表)

mkdir /Users/mac/Library/solr/server/solr/core_name

echo "name=core_name" > /Users/mac/Library/solr/server/solr/core_name/core.properties

cp -r /Users/mac/Library/solr/server/solr/configsets/basic_configs/conf  /Users/mac/Library/solr/server/solr/core_name/

注意:

  1. core.propertiesconf目录应放置在相同的路径。
  2. conf目录将包含schema.xmlsolrconfig.xml文件。(schema.xml 可以由managed-schema拷贝过来修改 cp managed-schema schema.xml)
下面就要来配置几个文件
schema.xml 这个是索引的结构定义的文件,定义了字段的名称,类型,索引与否,分词方法等 solrconfig.xml 这个文件是solr的基础文件,主要配置了solr的各种web请求处理器、日志、缓存等 db-data-config.xml 这个是配置连接mysql数据库的配置信息,名称可以自己修改,也是放在conf 下面(没有可以自行创建)

schema.xml 需要配置的代码如下

<!-- <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> -->
   <field name="id" type="int" indexed="true" stored="true" required="true" multiValued="false" />
   <field name="title" type="text_ik" indexed="true" stored="true" />
   <field name="content" type="text_ik" indexed="true" stored="true" />

另外添加定义fieldtype:

 <fieldType name="text_ik" class="solr.TextField" >
       <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer" />
    </fieldType>

solrconfig.xml:

<requestHandlername="/select"class="solr.SearchHandler"> 上面添加:

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

另外:
<!--  <schemaFactory class="ManagedIndexSchemaFactory">
    <bool name="mutable">true</bool>
    <str name="managedSchemaResourceName">managed-schema</str>
  </schemaFactory>-->
   <schemaFactory class="ClassicIndexSchemaFactory"/>
注意我是注释掉之前的schemaFactory添加了ClassicIndexSchemaFactory

最后db-data-config.xml:

<?xml version="1.0" encoding="UTF-8" ?>  
<dataConfig>
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/db_ldjs" user="root" password="123456"/>
<document name="testmysqlDoc">
    <entity name="tb_solr" pk="id" query="select id ,name as title,CONCAT(name,' ',mobile,' ',province,' ',city,' ',company,' ',total,' ',flg) as content from tb_solr">
    <field column="id" name="id"/>
    <field column="title" name="title"/>
    <field column="content" name="content"/>
    </entity>
</document>
</dataConfig>

重启solr

登录http://localhost:8000/

点击Dataimport -->excute


以上是关于solr的在mac上的安装配置以及同步mysql数据的主要内容,如果未能解决你的问题,请参考以下文章

solr 7+tomcat 8 + mysql实现solr 7基本使用(安装集成中文分词器定时同步数据库数据以及项目集成)

solr+mysql数据同步配置

solr+mysql数据同步配置

MySql在Mac上的安装配置

视频干货Solr系列|08-Solr安装和配置

Mac安装MySQL以及配置环境变量