Solr是一个高性能,採用Java5开发,基于Lucene的全文搜索server。同一时候对其进行了扩展,提供了比Lucene更为丰富的查询语言,同一时候实现了可配置、可扩展并对查询性能进行了优化,而且提供了一个完好的功能管理界面,是一款很优秀的全文搜索引擎。

能够将数据库中的数据导入到solr中,对于百万级别的数据能够高速响应查询。

1、安装jdk

JDK版本号须要1.7以上

2、安装solr

下载solr压缩包,解压安装包。进入到SOLR_HOME\example文件夹下,执行命令java –jar start.jar启动solr

Solr默认port为8983,訪问http://localhost:8983/solr,若有例如以下界面,则启动成功

3、导入并更新数据相关配置

Solr提供了将数据库数据导入到solr索引库的功能(dataimport)

3.1、下载数据库驱动包

下载mysql的驱动包。并放在{%SOLR_HOME%}contrib\dataimporthandler\lib文件夹下

3.2、配置solrconfig.xml

3.2.1、引用相关库

solrconfig.xml包括了用于配置自身行为的绝大部分參数,其作用范围是当前core。位置在文件文件夹该文件位于{%solr_home%} example\solr\collection1\conf下。

数据导入须要引用mysql的驱动包和DataImport所需的包。

在文件里加入例如以下内容:

<libdir="../../../contrib/dataimporthandler/lib"regex=".*\.jar" />

<lib dir="../../../dist/"regex="solr-dataimporthandler-\d.*\.jar" />

3.2.2、配置requestHandler

在solrconfig.xml中增加例如以下配置:

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

<lst name="defaults">

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

</lst>

</requestHandler>

3.3、配置schema.xml

Schema.xml能够灵活的配置不同类型的字段,所在位置与solrconfig.xml同级。

导入数据须要配置与数据库中字段一致的类型,在配置文件里

3.3、配置数据源

在与solrconfig.xml同级文件夹下({%solr_home%}example\solr\collection1\con),建立与3.2.2中配置中同名的数据配置文件data-config.xml,

并加入例如以下内容

<dataConfig>

<!-- driver: 数据库驱动名

url:数据库路径

user:数据库用户

password:数据库密码

batchSize:防止在导入数据过程中内存溢出

-->

<dataSource type="JdbcDataSource"

driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost/exercise"

user="root"

password=""

batchSize="-1"/>

<document>

<!--要导入的表,能够配置多个

并查询出要建立索引的字段

-->

<entity name="customerinfo" query="selectcustomerID,customerName,PID,telephone from customerinfo">

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

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

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

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

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

</entity>

</document>

</dataConfig>

4、导入数据

訪问solr界面

Command选择full-import,Entity选择要导入的表,再点击Execute便可导入数据

完毕后会提示索引建立完毕。

然后在Query界面能够输入相关查询条件进行查询

[jjzhu学java]之solr4.9同步mysql数据的更多相关文章

  1. Logstash使用jdbc_input同步Mysql数据时遇到的空时间SQLException问题

    今天在使用Logstash的jdbc_input插件同步Mysql数据时,本来应该能搜索出10条数据,结果在Elasticsearch中只看到了4条,终端中只给出了如下信息 [2017-08-25T1 ...

  2. 使用Logstash来实时同步MySQL数据到ES

    上篇讲到了ES和Head插件的环境搭建和配置,也简单模拟了数据作测试 本篇我们来实战从MYSQL里直接同步数据 一.首先下载和你的ES对应的logstash版本,本篇我们使用的都是6.1.1 下载后使 ...

  3. 使用logstash同步MySQL数据到ES

    使用logstash同步MySQL数据到ES 版权声明:[分享也是一种提高]个人转载请在正文开头明显位置注明出处,未经作者同意禁止企业/组织转载,禁止私自更改原文,禁止用于商业目的. https:// ...

  4. 推荐一个同步Mysql数据到Elasticsearch的工具

    把Mysql的数据同步到Elasticsearch是个很常见的需求,但在Github里找到的同步工具用起来或多或少都有些别扭. 例如:某记录内容为"aaa|bbb|ccc",将其按 ...

  5. centos7配置Logstash同步Mysql数据到Elasticsearch

    Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中.个人认为这款插件是比较稳定,容易配置的使用Logstash之前,我们得明确 ...

  6. 10.Solr4.10.3数据导入(DIH全量增量同步Mysql数据)

    转载请出自出处:http://www.cnblogs.com/hd3013779515/ 1.创建MySQL数据 create database solr; use solr; DROP TABLE ...

  7. 同步mysql数据到ElasticSearch的最佳实践

    Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全 ...

  8. canal同步MySQL数据到ES6.X

    背景: 最近一段时间公司做一个技术架构的更改,由于之前使用的solr和目前的业务不太匹配,具体原因不多说啦.所以要把数据放到Elasticsearch中进行快速的搜索,这是便产生了一个数据迁移的需求, ...

  9. Elasticsearch--Logstash定时同步MySQL数据到Elasticsearch

    新地址体验:http://www.zhouhong.icu/post/139 一.Logstash介绍 Logstash是elastic技术栈中的一个技术.它是一个数据采集引擎,可以从数据库采集数据到 ...

随机推荐

  1. Cookies设置,获取,删除

    之前的博客,整理了下Session的存储方式和原理http://www.cnblogs.com/chinaagan/p/3200456.html. 本篇再次整理下Cookies的使用和原理. 参考博客 ...

  2. 【HDOJ5977】Garden of Eden(点分治)

    题意:给定一棵n个点的树,每个节点上有一种颜色a[i],一共有k种颜色,问包含所有颜色的路径条数 n<=5e4,k<=10 思路:点分治求方案数 集合并卷积的时候暴力枚举状态即可O(n^l ...

  3. 【Codeforces Round #518 (Div. 2)】

    A:https://www.cnblogs.com/myx12345/p/9847588.html B:https://www.cnblogs.com/myx12345/p/9847590.html ...

  4. updatepanel中使用alert弹出框方法

    原文发布时间为:2009-05-17 -- 来源于本人的百度文章 [由搬家工具导入]         ScriptManager.RegisterStartupScript(this.UpdatePa ...

  5. win10下怎么配置以KDiff3作为merge tool和diff tool

    系统环境: OS: Windows 10 Git 2.6.1.windows.1 KDiff3 0.9.98 (64 bit) 具体代码如下: git config --global --add me ...

  6. javascript 数据类型的一些方法总结

    字符串slice()与substring()的区别: 相同点:均接收两个参数,分别是子字符串的起始位置和终止位置.返回这两者之间的子字符串,不包括终止位置的字符.如果第2个参数不设置,则默认字符串的长 ...

  7. yii框架美化访问路径,去掉index.php/?r=部分

    一.找到配置文件(ps:advance高级模板) 在工程目录-> backend目录 或 frontend目录 -> config目录 -> main.php文件 -> 在 r ...

  8. iptables之centos6版本常用设置

    默认策略 # iptables -LChain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywh ...

  9. .NET下XML文件的读写

    一.前言: XML是微软.Net战略的一个重要组成部分,而且它可谓是XML Web服务的基石,所以掌握.Net框架下的XML技术自然显得非常重要了.本文将指导大家如何运用C#语言完成.Net框架下的X ...

  10. AC日记——通往奥格瑞玛的道路 洛谷 P1462

    通往奥格瑞玛的道路 思路: 二分+spfa: 二分最大费用,然后判断只走小于等于二分答案的点是否可以花费小于体力上限的血量: 来,上代码: #include <cstdio> #inclu ...