zoukankan      html  css  js  c++  java
  • Solr——从mysql数据库导入数据

    1,配置准备

    本文的前提是你已经配置好了solr,并新创建了一个core,我们下面都会按照前一篇文章中的core_demo为基础开始

    2,修改soreconfig.xml

    在soreconfig.xml的<requestHandler name="/select" class="solr.SearchHandler">上面添加如下代码:

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

    注意:需要确认文件中不存在其他的dataimport,如果存在直接替换即可

    在同级目录下创建data-config.xml文件,然后配置数据库相关属性

     1 <?xml version="1.0" encoding="UTF-8"?> 
     2 <dataConfig>
     3     <dataSource name="source1" type="JdbcDataSource"
     4               driver="com.mysql.jdbc.Driver"
     5               url="jdbc:mysql://127.0.0.1:3306/ecejcallcenter"
     6               user="root"
     7               password="123456" />
     8     <document>
     9         <entity name="cc_bill" dataSource="source1" pk="bill_id"
    10             query="SELECT cc_bill.bill_id,cc_bill.`name`,cc_bill.address,cc_bill.city_name,cc_bill.create_time FROM cc_bill">
    11             <field column='bill_id' name='billid' />
    12             <field column='name' name='name' />
    13             <field column='address' name='address' />
    14             <field column='city_name' name='cityname' />
    15             <field column='create_time' name='createtime' dateTimeFormat='yyyy-MM-dd HH:mm:ss' />
    16         </entity>
    17     </document>
    18 </dataConfig>

      关于详细的配置请参照:http://blog.csdn.net/boolbo/article/details/50352331

        官方wiki:https://cwiki.apache.org/confluence/display/solr/

    3,配置managed-schema

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 
     3 <schema name="example" version="1.6">
     4   
     5    <field name="billid" type="int" indexed="true" stored="false"/>
     6    <field name="name" type="string" indexed="true" stored="true"/>
     7    <field name="address" type="string" indexed="true" stored="true"/>
     8    <field name="cityname" type="string" indexed="true" stored="true"/>
     9    <field name="createtime" type="date" indexed="true" stored="true"/>
    10    
    11    <field name="_version_" type="long" indexed="false" stored="false"/>
    12    <field name="text" type="string" indexed="true" stored="false" multiValued="true"/>
    13    <field name="_root_" type="string" indexed="true" stored="false" docValues="false" />
    14 
    15 
    16     <uniqueKey>billid</uniqueKey>
    17 
    18     <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
    19     <fieldType name="int" class="solr.TrieIntField" docValues="true" precisionStep="0" positionIncrementGap="0"/>
    20     <fieldType name="long" class="solr.TrieLongField" docValues="true" precisionStep="0" positionIncrementGap="0"/>
    21     <fieldType name="date" class="solr.TrieDateField" docValues="true" precisionStep="0" positionIncrementGap="0"/>
    22 
    23 
    24 </schema>

    网上很多教程说到schema.xml,这个文件是solr之前的版本中用到的,6.6版本是不需要的,直接修改上面的文件就可以。

    4,拷贝jar

    拷贝solr-6.6.0dist路径下的solr-dataimporthandler-6.6.0.jar,solr-dataimporthandler-extras-6.6.0.jar 到E:Java omcatapache-tomcat-8.0.26-windows-x64webappssolrWEB-INFlib目录下

    同时拷贝mysql-connector-java-5.1.40.jar链接jar到该目录下 

    不需要修改任何配置文件即可,继续下面的步骤

    5,修改jar配置路径

    继续打开solrconfig.xml 找到lib标签,修改jar的路径,下面贴上我本地修改后的路径

    复制代码
      <lib dir="E:Javacomponentssolr-6.6.0/contrib/extraction/lib" regex=".*.jar" />
      <lib dir="E:Javacomponentssolr-6.6.0/dist/" regex="solr-cell-d.*.jar" />
    
      <lib dir="E:Javacomponentssolr-6.6.0/contrib/clustering/lib/" regex=".*.jar" />
      <lib dir="E:Javacomponentssolr-6.6.0/dist/" regex="solr-clustering-d.*.jar" />
    
      <lib dir="E:Javacomponentssolr-6.6.0/contrib/langid/lib/" regex=".*.jar" />
      <lib dir="E:Javacomponentssolr-6.6.0/dist/" regex="solr-langid-d.*.jar" />
    
      <lib dir="E:Javacomponentssolr-6.6.0/contrib/ltr/lib/" regex=".*.jar" />
      <lib dir="E:Javacomponentssolr-6.6.0/dist/" regex="solr-ltr-d.*.jar" />
    
      <lib dir="E:Javacomponentssolr-6.6.0/contrib/velocity/lib" regex=".*.jar" />
      <lib dir="E:Javacomponentssolr-6.6.0/dist/" regex="solr-velocity-d.*.jar" />
    复制代码

    不需要添加任何jar即可

    6,重启tomcat,刷新solr页面即可看到下面界面

     full-import 全量导入,delta-import-增量导入

    点击Execute就可以导入了,点击左侧Query可查询导入的数据

    参考:https://www.cnblogs.com/blueskyli/p/7128400.html

  • 相关阅读:
    浅谈CLR CTS CLS。。。
    "每日一道面试题".net托管堆是否会存在内存泄漏的情况
    “每日一道面试题”.Net中GC的运行机制
    “每日一道面试题”.Net中所有类的基类是以及包含的方法
    c# 逆波兰式实现计算器
    c#控制台实现post网站登录
    c#读取xml文件
    .net md5
    ado.net知识整理
    第八章:Python高级编程-迭代器和生成器
  • 原文地址:https://www.cnblogs.com/LCharles/p/11157075.html
Copyright © 2011-2022 走看看