solr6 mysql_solr6 从mysql上导入数据

步骤1:

在webapps中solrhome下新建一个文件夹名字叫做mynode(名字不固定,可以随便取,但是这个名字在后面的配置中会有所关联。)然后在mynode文件下新建一个名字叫做conf的文件夹(这个文件名字最后不要改。)然后把官网下下来的solr项目中solr-6.0.0\server\solr\configsets\data_driven_schema_configs\conf下的所有东西复制到conf中去。(注意不要复制错!)最后把solr-6.0\solr-6.0.0\example\example-DIH\solr\db\conf下的admin-extra.html, admin-extra.menu-bottom.html ,admin-extra.menu-top.html三个文件也复制到conf中去。

步骤2:

把mysql所需的jar包和solr-6.0\solr-6.0.0\dist下的solr-dataimporthandler-6.0.0.jar和solr-dataimporthandler-extras-6.0.0.jar都复制到项目WEB-INF\lib下。然后在solrconfig.xml文件中加入(就是把WEB-INF\lib里面的jar包配置到项目中,我这里用的是绝对地址。这段代码大约在solrconfig.xml的70多行处,前面有一堆类似的代码。)

步骤3:

在MYSQL中新建一张表。我这里用的是Navicat管理工具进行创建的。这里的表名是goods。字段如下图所示:

b885fa615eca18b0fa61501903fa9c71.png

步骤4:

在solrconfig.xml的  之上添加

data-config.xml

然后在conf下新建data-config.xml文件。里面内容如下:

query="select * from  goods"

deltaImportQuery="select * from goods where id='${dih.delta.id}'"

deltaQuery="select id from goods where updateTime> '${dataimporter.last_index_time}'">

说明:

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和最近一次索引的时间。

最后在conf文件下的managed-schema配置field信息:

其中id,name,number,updateTime是上面提到的数据库字段。下面三个field是系统本身的不能删除,否则会运行错误。

步骤5:

启动tomcat,并在URL中输入http://127.0.0.1:8080/solr/index.html路径。选择Core admin 输入如下设置:

d7a999a31267de8475876b576ada87ad.png

设置好之后,点击Add Core按钮,进行设置,设置成功后,再core Selector选择刚刚添加的core。

f2aeec172b6fcf3fbcc12fcde5c5be2d.png

选择刚刚添加的goods实体进行索引操作:我们这儿可以选择full-import或者delta-import(增量索引),选择增量索引需要把clean的勾给去掉,不然会清除之前的,增量的索引的初衷是对新增或者修改的记录重新索引,会追加到原有的索引文件当中。当我们选择full-import的时候,最好就是把原有的索引文件给清空重新索引。

00b943b0116dd4ca964bddcb1abde0f4.png

索引成功如下如所示:

6d0048e184d665afcfa913798c709ed4.png

使用query进行测试,输入sa查出了sa

2a8d5b7f3bffe5f61803e28a214c7995.png

数据库中的数据如下图所示:

cc79525c39bfc4e353bb622067665e37.png

这就成功的配置完了MYSQL数据库了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值