您的位置:首页 > 数据库 > MySQL

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

2016-11-01 16:06 901 查看
首先下载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/
注意:

core.properties和conf目录应放置在相同的路径。
conf目录将包含schema.xml和solrconfig.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 mysql solr配置