[jjzhu学java]之solr4.9同步mysql数据

    xiaoxiao2026-01-31  2

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

           可以将数据库中的数据导入到solr中,对于百万级别的数据可以快速响应查询。

    1、安装jdk

    JDK版本需要1.7以上

    2、安装solr

    下载solr压缩包,解压安装包,进入到SOLR_HOME\example目录下,运行命令java –jar start.jar启动solr

    Solr默认端口为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界面可以输入相关查询条件进行查询

    相关资源:七夕情人节表白HTML源码(两款)
    最新回复(0)