Solr6.4.2+jetty+mysql

下载地址

solr : solr官网地址

部署

  • 由于solr默认带有jetty服务器,所以使用默认jetty服务器

  • 解压后的目录结构


    解压后的目录结构

启动

cd solr-6.4.2;
bin/solr start -p [端口名];
bin/solr stop -p [端口名];
bin/solr restart -p [端口名];

启动成功后的页面

创建core

core 是存储索引的地方

  1. 这次是连接mysql,到/Users/wangxun/Downloads/solr-6.4.2/server/solr/configsets 复制data_driven_schema_configs 文件夹 mycollect

  2. 为了导入数据和链接mysql,我们还需要导入两个重要的jar包。由于mysql的jar包并没有在项目中,我是复制了一份放到了dist目录下面了。另外两个需要的jar包就是dist目录下带有“dataimport”标识的jar包。
    然后打开myCollections/conf/solrconfig.xml,引用上面提到的jar包,如下。

<lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />

  <!-- mysql导入增加的包开始-->
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="mysql-connector-java-5.1.30.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" />
  <!-- mysql导入增加的包结束-->

之前我引入的是5.1.20,一直报错。后来更换了jar就可以了

  1. 建立表

  2. 将表跟solr的实体对应上。myCollections/conf/solrconfig.xml,搜索 <requestHandler name="/select" class="solr.SearchHandler"> ,然后在该行之上添加如下代码。

<!--mysql 数据库导入开始 -->
  <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">  
      <lst name="defaults">  
         <str name="config">data-config.xml</str>  
      </lst>  
 </requestHandler> 
  <!--mysql 数据库导入结束 -->
    
  <requestHandler name="/select" class="solr.SearchHandler">
  1. 配置data-config.xml文件
<?xml version="1.0" encoding="UTF-8"?>  
<dataConfig>  
  <dataSource name="source1" type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.198.100:3306/blade" user="root" password="123456" batchSize="-1" />  
  <document>  
    <entity name="person" pk="id"  dataSource="source1"   
                query="select * from person"  
                deltaImportQuery="select * from person where id='${dih.delta.id}'"  
               deltaQuery="select id from person where updatetime> '${dataimporter.last_index_time}'">  
      <field column="id" name="id"/>  
      <field column="name" name="name"/>  
      <field column="money" name="money"/>  
      <field column="content" name="content"/> 
      <field column="updatetime" name="updatetime"/>   
    </entity>  
  </document>  
</dataConfig>

dataSource是数据库数据源。Entity就是一张表对应的实体,pk是主键,query是查询语句。Field对应一个字段,column是数据库里的column名,后面的name属性对应着Solr的Filed的名字。其中solrdata是数据库名,goods是表名。

其中deltaQuery是增量索引,原理是从数据库中根据deltaQuery指定的SQL语句查询出所有需要增量导入的数据的ID号。然后根据deltaImportQuery指定的SQL语句返回所有这些ID的数据,即为这次增量导入所要处理的数据。核心思想是:通过内置变量“${dih.delta.id}”和 “${dataimporter.last_index_time}”来记录本次要索引的id和最近一次索引的时间。

  1. managed-schema配置field信息
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="_version_" type="long" indexed="false" stored="false"/>
    <field name="_root_" type="string" indexed="true" stored="false" docValues="false" />
    <field name="_text_" type="text_general" indexed="true" stored="false" multiValued="true"/>

     <field name="name" type="string" indexed="true" stored="false" />
    <field name="money" type="int" indexed="true" stored="false" />
    <field name="content" type="string" indexed="true" stored="true" />
    <field name="updatetime" type="date" indexed="true" stored="true" />
  1. 创建core


    创建core
  2. 执行


    执行
  3. 查询测试


    查询测试
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,671评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,442评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,524评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,623评论 1 275
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,642评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,584评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,953评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,621评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,865评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,608评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,698评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,378评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,958评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,940评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,173评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,419评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,425评论 2 342

推荐阅读更多精彩内容